AWS Cloud Migration for Utility Bill Payments Platform
Mobile Distribution, a company that offers financial services since 1997, launched a smart service of utility bill payment collection for their partner store network across Romania, which is constantly growing.
In 2020, they decided to launch a B2C mobile app that helps the end customers pay their bills faster and more easily, from the comfort of their homes. The application was successfully launched on both iOS and Android platforms. Our collaboration started in 2013 and has only become stronger over the years.
THE CHALLENGE
THE CHALLENGE
Being a business that expanded a lot since we initially set up their cloud infrastructure, adding more and more service providers, a growing number of users, and thousands of payments being processed on a daily basis, the client needed a new infrastructure that would accommodate their continuous growth without data loss, performance and redundancy issues, and sky-high maintenance costs.
We designed and implemented an infrastructure that would be highly available, auto-scalable, and secure, have better performance overall, all of that while keeping the costs to a minimum.
After conducting a risk assessment, we have identified that a major challenge would be to prepare and implement a smooth migration plan that will allow services and data migration to the new environment.
In addition, recreating the connections to all third parties (secure channels, VPNs, communication with IP whitelisting, and not only) with a minimum downtime would be of the essence, as the system is mission-critical.
THE SOLUTION
The solution we proposed after careful analysis, was migration to AWS Cloud using Re-platforming strategy, also called “lift-tinker-and-shift.”
We made quite a few cloud optimizations by migrating to a database-as-a-service platform (Amazon RDS), a fully managed message queuing service (SQS), a fully managed Redis service (Amazon ElastiCache for Redis), fully managed container orchestration service (Amazon ECS), without changing the core architecture of the application.
We aimed at reducing the amount of time the Operation team will spend managing these services, and benefit from increased speed, reliability and security provided by using AWS managed services. We started with a Proof of Concept (POC) infrastructure built using Infrastructure as a code (IaaC) in order to easily replicate the infrastructure in other environments.
We tested our services in the AWS cloud and we have run the migration process several times in order to reduce the risk and the time for the application downtime. Afterwards, we have set up the stage and production environments.
In addition, we needed to ensure a smooth communication and sync with all service providers, to make sure everything is in place before making the big switch to the new environment.
Together with the customer, we found the best time-frame for the migration.
KEY OUTCOMES
- The migration process was smooth, no technical or business-critical issues being encountered during the migration from the old cloud to the AWS cloud;
- The monitoring, logging and backup services offered by AWS help in the maintenance services;
- The infrastructure is now reliable and auto-scalable, no concern on data loss, or downtime; A notable achievement is that the client didn’t experience downtime during the past three years;
- The costs are down to a minimum, by using cost optimization plans;
- The new infrastructure supports business growth: the number of daily transactions grew considerably, from less than 10 000 to more than 140 000 per day;
- The transaction time decreased significantly, for example during peak time (10am-11am), when over 21.000 transactions were successfully processed, the number of transactions per second was 5,8.