Presented by JPMorgan Chase
With customers demanding ever-more from their mobile devices and financial services apps, JPMorgan Chase has doubled down on modernizing and transforming banking technology with a focus on speed. Customers want new and enhanced features quickly, and the speed of delivery increases customer satisfaction, says Roman Eisenberg, who oversees developer practices and release engineering as the head of consumer and community banking (CCB) card technology at Chase.
“To make experiences more delightful, and to eliminate outages or errors, automation is critical for testing, deployments and rollbacks without manual intervention,” Eisenberg explains. “As we roll out more and more features across all products, our focus on testing and release automation helps us improve the customer experience and deepen engagement with our customers.”
The company’s goal for each of its applications is to be prepared and able to deploy any change to production in under one hour, with confidence in quality.
In addition to adhering to strict controls and regulations, the team must minimize and reduce customer impact when launching or updating applications and code. And by striving to deliver a refreshed Chase Mobile app every two weeks, developers are committed to providing customers with fast, reliable products and services that require constant innovation and refinement, and are reliable and secure. The aspiration of having thousands of components behind the Chase Mobile app ready for deployment in under an hour enables the possibility of refreshing the app every two weeks while also improving the application developers’ lives.
The challenge lies in maintaining comprehensive and fast tests to ensure that new changes do not disrupt existing capabilities and customer experiences, while also guaranteeing that the test execution results are reliable, consistent and can be observed quickly.
The team at Chase is focused on solving this problem using automated continuous integration, continuous delivery (CI/CD) through a multi-step automation flow that they call TrueCD — a process that has enabled Chase to publish bi-weekly updates to the Chase Mobile app, providing approximately 67 million mobile users with the latest updates they need to manage their finances smoothly and efficiently.
Overcoming the challenges of validating mobile code with functional UI tests
Mobile UI testing is more difficult to do because of device fragmentation, security, performance and reliability constrains, often leading teams to abandon test automation altogether. CI/CD makes the development process much more responsive to change and provides confidence that changes are of a better quality and can be released faster. It also provides more certainty that an application being deployed will work as customers expect and meet regulatory and control requirements — all of this leads to greater work satisfaction from the developer team.
“Adopting TrueCD for our mobile app accelerated the implementation of robust testing strategies,” Eisenberg says. “BecauseTrueCD is an opinionated set of test and release automation practices, we have confidence that the speed of our software delivery will not compromise quality. Plus, investment in the right tools and infrastructure and ongoing training and support has brought more developers to the table who faced the challenges otherwise.”
Aligning with the devOps principle of creating fast feedback loops and supporting the devOps goal of accelerating the software delivery lifecycle while maintaining high quality, TrueCD helps detect issues early and deliver code changes to production quickly and reliably.
How TrueCD is changing the game for developers
TrueCD was developed to create and enable behaviors that drive modernization and innovation, Eisenberg adds. The TrueCD approach to automated CI/CD is unique in several ways.
Automation everywhere. TrueCD emphasizes extensive testing automation earlier in the software delivery process. This process leverages approved enterprise tooling to build, test and deploy code. This automation increases efficiency and reduces manual errors. For example, the TrueCD toolchain provides teams an easy way to create runnable tests by generating Gherkin domain specific language specifications based on feature requirements. This approach allows us to identify and resolve issues at an earlier stage, which reduces the need for rework, accelerates delivery and enhances the developers’ overall experience.
Comprehensive delivery approach. TrueCD adopts a detailed 12-step software delivery process that includes upfront automation of various types of testing such as unit, contract, component, acceptance, end-to-end, performance, security and resiliency testing. This comprehensive approach ensures thorough validation at each stage.
Simulation techniques. TrueCD uses simulation techniques to mimic the behavior of components that might be unavailable or difficult to access, allowing for more flexible and efficient testing environments.
Automated deployment. The approach includes automating advanced deployment strategies like blue/green deployments, which allow for zero-downtime releases, and automated rollback capabilities to quickly revert changes if issues are detected. Reduced deployment time directly influences the speed at which new features or bug fixes reach end-users. Faster deployments enhance agility and responsiveness.
“At Chase the key to our software development life cycle is delivering quality software quickly and predictably to production so we can deliver the best experiences to our customers,” Eisenberg says. “We continue to benefit by faster time-to-market, improved software quality, reduced development costs, increased development team productivity and enhanced customer satisfaction due to more frequent and reliable updates.”
Like what you’re reading? Check out Next at Chase for more insights from one of banking’s most innovative organizations.
Chase Mobile® app is available for select mobile devices. Message and data rates may apply.
JPMorgan Chase is an Equal Opportunity Employer, including Disability/Veterans
For Informational/Educational Purposes Only: The opinions expressed in this article may differ from other employees and departments of JPMorgan Chase & Co. Opinions and strategies described may not be appropriate for everyone and are not intended as specific advice/recommendation for any individual. You should carefully consider your needs and objectives before making any decisions and consult the appropriate professional(s). Outlooks and past performance are not guarantees of future results.
Any mentions of third-party trademarks, brand names, products and services are for referential purposes only and any mention thereof is not meant to imply any sponsorship, endorsement, or affiliation.
Sponsored articles are content produced by a company that is either paying for the post or has a business relationship with VentureBeat, and they’re always clearly marked. For more information, contact