How Chase uses CICD to deliver a new mobile app every 2 weeks

Next at Chase
Next at Chase
Published in
4 min readAug 10, 2023

By: Cedric Beust, Head of Tech for the Chase Mobile App

The Chase Mobile® app gives our customers the ability and flexibility to bank and access their accounts from nearly anywhere and anytime, when they are connected. It serves close to fifty million users with over 20 mobile logins per user per month, making it one the most used mobile banking applications in the financial industry. We produce it with a team of more than a thousand engineers and associates.

Through the app, we continue to bring our customers closer to their finances, more often and more efficiently with each and every app release. But how do we keep it running smoothly, and bring the latest updates to our customers?

In 2021, we released app updates once a month and by 2022, we started to publish them every two weeks. This cadence has allowed us to focus on our customers’ growing banking needs throughout the year, at times when our customers need enhanced access to their finances the most: when they are on the go.

To release more often and more efficiently on an app of our scale, we do it in 3 main ways:

1. CICD (Continuous Integration Continuous Delivery): Through the utilization of advanced dependency management pipelines, testing techniques focused on certifying individual components prior to integration to the whole, and the operationalization of an advanced release management structure. Each team knows they can trust the engineering best practices that pull everything together every two weeks, to the same extent that customers trust Chase with their mobile banking needs. And with automatic updates enabled, we can reach ten million customers within 48 hours.

2. Single app experience: Tailoring our practices is the second key to maintaining an optimized experience. While our technical implementation and choice of technologies focuses on industry best practices unique to the Android and iOS developer platforms, the goals of each are the same. While maintaining a single app strategy overall, we create a culture that maximizes the opportunity for small, highly focused teams to deliver the best banking experience to our customers, without distracting one another in the process.

3. A focus on stability: To gain and keep our customers’ trust, we have decreased our crash rate per customer from 0.03% in 2022, to 0.01% in 2023. This means that on average, a customer may only crash once every three years based on app usage analytics. After the speed of the app, quality helps us hold onto our customers’ trust.

So how do we remain efficient, tailored and deliver near unshakeable stability? We invest in and embrace best-in-class CICD practices. Through advanced dependency management techniques, enhanced test automation and governance to maintain platform quality and stability goals. That means Unit Testing, Functional Component UI (User Interface) mock testing, our End-to-End Regression Test pack (2K+ tests/ platform) and our Production Validation Test suite (600+ tests/ platform that run 24/7 in production) are set up for continuous execution to ensure quality in both the build and deployment stages of the application. While our customers are hopefully getting some much-deserved rest, these test suites never sleep.

Our Production Validation Test suite is instrumental, as it creates a stable Production Synthetic Monitoring solution that can proactively find incidents before customers encounter them. The PVTs (Production Validation Tests) also have a positive impact on production release events, reducing the amount of time and resources needed for deployment validation activities. Our testing also ensures we are there for customers, so we slowly roll out updates in increments based on stability, starting with 1%, and increasing until we know its stable to go to 100%.

And finally, our improved tooling and processes help us decrease the development cycle and trouble shooting. We migrate Mobile Product components and update Mobile frameworks so that they can be loosely coupled, and hence can be developed and validated independently.

The goal is to deliver often and fast.

Like what you’re reading? See all of our open positions here.

Chase Mobile® app is available for select mobile devices. Message and data rates may apply.

Deposit products provided by JPMorgan Chase Bank, N.A. Member FDIC

IOS is a trademark or registered trademark of Cisco in the U.S. and other countries and is used under license. Apple, the Apple logo and Face ID are trademarks of Apple Inc., registered in the U.S. and other countries. App Store is a service mark of Apple Inc.

Google Play and Android are trademarks of Google Inc.

--

--

Next at Chase
Next at Chase

A blog about technology, product, design, data and analytics, and what it takes to build a career at one of banking's most innovative organizations.