chime-logo

Chime Scales Member Services and Innovates Using Amazon Aurora and Amazon EC2

2021

Financial technology company Chime was growing rapidly, but it was constantly reaching the capacity limits of its hosting service. Chime, which facilitates banking for millions of people, wanted to remove scale-related downtime, increase its flexibility, and find a solution that would keep its services running for its members. By migrating to Amazon Web Services (AWS), Chime scaled its services without transitional downtime and removed capacity issues. Now, it can provide a faster, more reliable experience to its members while also freeing up time for its engineers to continue to innovate.
woman-using-phone-for-contactless-payment
kr_quotemark

On AWS, our teams are freed to do work that provides value to our customers, not just chase after scale problems.”

Michael Barrett
Vice President of Engineering Services, Chime

More Customers Than Capacity

Founded on the premise that basic banking services should be helpful, easy, and free, Chime is dedicated to helping its members, everyday Americans, achieve financial peace of mind. Chime itself is a financial technology company, not a bank; banking services are provided by Chime’s partners, the Bancorp Bank and Stride Bank, members of the Federal Deposit Insurance Corporation. Headquartered in San Francisco, Chime has offices in the United States and Canada and has seen its team grow over eight times in size from 2018 to 2021.

As Chime grew, it began running into scaling problems. Previously hosted in a data center, Chime had reached maximum capacity. Scaling within its data center hosting provider was an arduous process that demanded a lot of engineer time and risked downtime for customers, something Chime wanted to avoid. “We’re the primary financial institution for a lot of people,” says Michael Barrett, vice president of engineering services at Chime. “If a Chime member can’t buy gas because Chime has an outage due to a scale problem, that’s something we take very seriously.”

Chime needed to scale its 5 TB database, which was at the limit of its previous host’s largest hardware solution, as well as its firewall and load balancers. Barrett remembers colleagues discussing the load balancer scaling issues they were having. Before coming to Chime in 2020, Barrett had worked for several years for other companies that used AWS. “It dawned on me how little I’ve thought about scaling load balancers in the past 10 years,” says Barrett. “On AWS, it just happens for you.”

The pressure was mounting to migrate from Chime’s previous hosting service to AWS. The team would often have to scramble to keep services running. “The risk of the site going down because we were running out of capacity was real,” says Barrett. Migration became a priority.

More Capacity in Amazon Aurora and Amazon EC2

Chime began migrating to AWS in early 2020, completing the move in October of that year. It migrated its database to Amazon Aurora, a MySQL- and PostgreSQL-compatible relational database built for the cloud that combines the performance and availability of traditional enterprise databases with the simplicity and cost-effectiveness of open-source databases. On the night when Chime’s database was fully migrated to Aurora, the whole infrastructure team and several engineers joined a video call to support the engineer pushing the button. Barrett recalls telling them, “This is going to be a bit anticlimactic because it’s going to go so smoothly.” And it did. Chime completed the migration with no downtime for its customers. Since the migration, the database has more than doubled in size, an expansion made feasible using Aurora.

As a fully managed service, Aurora automates time-consuming administration tasks, reducing the time Chime previously spent maintaining its database. Around 90 percent of Chime’s database traffic is read-only, and in Aurora, which can deliver up to 15 low-latency read replicas, Chime can add a new replica anytime it gets close to capacity. Now that Chime is running fully on AWS, the capacity-related outage concerns based on its previous infrastructure have effectively been removed. “On AWS, our teams are freed to do work that provides value to our customers, not just chase after scale problems,” says Barrett.

Chime also uses Amazon Elastic Compute Cloud (Amazon EC2), a web service that provides secure, resizable compute capacity in the cloud. Using Amazon EC2 alongside Amazon Elastic Kubernetes Service (Amazon EKS)—which gives users the flexibility to start, run, and scale Kubernetes applications on AWS or on premises—enables Chime to scale its capacity for its growing customer base. When problems arise and create a backlog of work, Chime no longer has to wait hours for its systems to catch up. Instead, it can increase the number of Amazon EKS workers to process the backlog in minutes.

Chime is ramping up fraud and risk detection in its data pipelines using AWS Glue, a serverless data integration service that makes it simple to discover, prepare, and combine data. Chime is also beginning to migrate some of its services into Amazon DynamoDB, a key-value and document database that delivers single-digit millisecond performance at any scale. “Using Amazon DynamoDB will enable that data to scale even more effortlessly,” says Barrett.

Chime has removed a major bottleneck for engineers by building and iterating multiple testing environments for its developers on AWS, rather than relying on the single test environment it had in its previous service. Chime’s engineers can also help themselves to the tools they need for development without creating tickets and waiting for the infrastructure team.

Using AWS creates a positive feedback loop of time efficiency: as more developer time is freed by automated and managed AWS services—including managed load balancers and firewalls—engineers can build more tools that free even more time, which they can reinvest in new and better services for Chime’s members. For example, Chime recently launched a highly scalable feature store service since migrating to AWS. The service improves the company’s machine learning models using Amazon DynamoDB, as well as AWS Lambda, a serverless compute service that runs code without provisioning or managing servers. Rolling out the feature store service has enabled Chime to make better predictions and decisions for its customer base, which has improved customer satisfaction.

More Innovation to Come

One Chime team is investigating how the company could use Amazon SageMaker—a machine learning service that can be used to build, train, and deploy machine learning models—to analyze data and improve fraud and risk detection. Chime also plans to explore using AWS services to optimize costs. “The less expensive it is to operate the service, the better it is for everyone,” says Barrett.

By migrating to AWS, Chime scaled its capacity to meet growing customer demand, improved the speed and stability of its services, and empowered its engineers to continue innovating to better serve members. Barrett says, “The ability to scale our services and our engineers by migrating to AWS has been a game changer.”


About Chime

Chime is a financial technology company founded on the premise that basic banking services should be helpful, easy, and free. Chime facilitates banking for those not served well by traditional banks, with no hidden fees or minimum balances.

Benefits of AWS

  • Migrated 5 TB database with no transitional downtime
  • Scaled services to millions of members
  • Removed capacity-related outages
  • Freed up database manager and developer time
  • Equipped self-service model for engineers
  • Created a positive feedback loop of efficiency
  • Supplied tools for ongoing innovation
  • Provided tools for fraud and risk detection

AWS Services Used

Amazon Aurora

Amazon Aurora is a MySQL and PostgreSQL-compatible relational database built for the cloud, that combines the performance and availability of traditional enterprise databases with the simplicity and cost-effectiveness of open source databases.

Learn more »

Amazon EC2

Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides secure, resizable compute capacity in the cloud. It is designed to make web-scale cloud computing easier for developers.

Learn more »

Amazon EKS

Amazon Elastic Kubernetes Service (Amazon EKS) gives you the flexibility to start, run, and scale Kubernetes applications in the AWS cloud or on-premises.

Learn more »

Amazon DynamoDB

Amazon DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale. It's a fully managed, multi-region, multi-active, durable database with built-in security, backup and restore, and in-memory caching for internet-scale applications.

Learn more »


Get Started

Companies of all sizes across all industries are transforming their businesses every day using AWS. Contact our experts and start your own AWS Cloud journey today.