Modernizing Chase Credit Card: From Mainframe to Cloud
How we are transforming decades-old systems to deliver faster innovation and better customer experiences
Modernizing Chase Credit Card: From Mainframe to Cloud
How we are transforming decades-old systems to deliver faster innovation and better customer experiences
By: Sakthi Muthuswamy, Director of Software Engineering, and Sankaran Raman, Principal Architect, Chase

Getty Images
- Event Streaming is the foundation of modernization — liberating data from mainframes enables everything else.
- AI-assisted reverse engineering helps decode mission-critical COBOL code, but must be validated with comprehensive testing against production behavior.
- At Chase, we used continuous data quality validation with circuit breaker patterns to help protect customers during the transition from legacy to modern systems.
That sleek credit card in your physical or digital wallets — with its metallic chip and contactless tap — might seem modern. But behind the scenes, it is often powered by technology built decades ago. At Chase, we have been on a multi-year journey to modernize the systems that process tens of millions of credit card transactions daily.
Here’s what we’ve learned along the way.
Why Modernization Matters
Mainframe systems have served the financial industry well for generations. They are proven, stable and handle massive transaction volumes. But they come with significant trade-offs.
Every small feature update requires extensive testing and scheduled outages. Multiple teams across the organization wait on lengthy mainframe release cycles just to deploy their changes. Perhaps most critically, finding engineers skilled in legacy programming languages like COBOL (Common Business-Oriented Language) and assembly language has become increasingly difficult.
*The real cost?* Slower innovation and delayed customer features.
As one of the leading credit card issuers, Chase is committed to continually enhancing customer experiences and strives to match the standards set by top consumer technology companies. Our goal is to roll out new features efficiently and respond to customer feedback as quickly as possible.
The Three Pillars of Our Modernization Journey
Our approach focuses on three critical areas: liberating data from mainframe systems; rebuilding business logic as modern microservices on public cloud and ensuring uninterrupted customer experience throughout the transition.
Pillar 1: Liberating the Data You cannot modernize applications without modernizing where they get their data. The mainframe remains our system of record (SOR) — the authoritative source of truth. But keeping data locked inside makes modernization very difficult and slow.
The challenge: Mainframes were optimized for batch processing and meeting tight SLAs, not for publishing real-time events.
We built an event streaming platform that captures changes from mainframe databases and publishes them to modern distributed systems. When a customer refreshes their mobile app, they need to see their latest transactions and balances immediately. That means our streaming must support “read after write” scenarios with minimal delay.

The platform needed to meet several critical requirements:
- High resilience and durability. With massive write volumes hitting mainframe tables continuously, the streaming system must never lose data or create inconsistencies.
- Automated recovery. If the system fails to detect or publish changes, it must automatically recover and catch up with all missed events without manual intervention.
- Field-level change detection. Some mainframe tables contain 500+ fields. The system must identify exactly which fields changed to provide meaningful context to downstream services.
The normalization challenge: Data coming out of the mainframe is not structured for modern distributed databases or for our target state domain architecture. Legacy systems often denormalize data for performance — cramming related information into single records.
Modern systems work differently. They expect normalized data with clear relationships and proper cardinality. A single mainframe record might need to be split across multiple tables in the distributed database, each representing a specific business domain.
Example: A mainframe record containing customer information, account details and transaction history becomes three separate tables — customers, accounts and transactions — each with proper relationships.
This transformation happens in the streaming pipeline itself. As events flow out of the mainframe, they are parsed, normalized and routed to the appropriate target tables based on business domain logic.
Pillar 2: Building Modern Microservices With data flowing freely, the next challenge emerged: recreating business logic that had evolved over decades inside legacy code. This was not just translation — it was archaeological work combined with software engineering.
The documentation problem: Most original engineers had moved on. At times, documentation was sparse or outdated. Code was written in languages few people learn today. Business logic for credit card processing, fraud detection, interest calculation, and compliance rules had accumulated over years.
Our solution: Reverse engineering with AI assistance. As previously detailed in *Reimagining Legacy at Scale with GenAI, *we used AI tools to analyze COBOL and assembly language code, generating detailed documentation about what the code actually does and why.
But AI-generated documentation is not enough on its own. We built comprehensive test suites to validate that documentation against actual production behavior before using it to build new services.

Key principles for modern services:
- Autonomous operation. Each service includes all dependencies needed to provide its features independently. No waiting on other teams or systems.
- True continuous delivery. Every code change goes through automated testing and can be deployed without scheduled outages or manual intervention.
- High availability. Services run across multiple availability zones and regions with distributed databases storing multiple copies of data.
- Backward compatibility. We use API-based data services that remain backward compatible when schemas change, so we can continue adding data attributes without forcing updates across all services.
- Bidirectional sync. When services update data in the cloud database, they also synchronously update the mainframe SOR to ensure consistency between both systems during the transition period.
Pillar 3: Ensuring Data Quality The most critical question: How do we ensure data in mainframe and distributed systems stays perfectly in sync? Customers must see identical balances whether they use legacy or modern features.
Our solution: The delegator pattern with circuit breaker protection. Every API call to our data services sends a point-in-time snapshot to a sidecar container. That sidecar queries the mainframe for the same customer data and compares results. This continuous validation generates data quality metrics in real-time.

If quality metrics show mismatches exceeding our threshold, the circuit breaker automatically routes requests to mainframe APIs instead of cloud services. This protects customers from seeing inconsistent data while our SRE (Site Reliability Engineering) team investigates the streaming pipeline issue.
This pattern gives us confidence to gradually shift traffic to modern services. We are not gambling with customer experience — we are validating every step with production data.
What We Have Learned
- Start with data. You cannot build modern services without modern data access. Event streaming is the foundation that enables everything else.
- Reverse engineering works — with validation. AI tools can help decode legacy code, but comprehensive testing against production behavior is non-negotiable.
- Build in quality from the start. The delegator pattern catches data inconsistencies before customers do, giving us confidence to move forward.
- Plan for dual operations. During modernization, you will run both legacy and modern systems simultaneously. Design for this from the beginning with bidirectional sync and circuit breaker patterns.
- Automate recovery. At scale, manual intervention does not work. Build automated recovery into every component, especially data streaming.
The Path Forward
Modernization at this scale is not a single project — it is a multi-year journey. We are incrementally moving customer journeys to modernized services while maintaining the reliability and security that customers expect from their financial institution.
The technical challenges are significant, but the outcome — faster innovation, better customer experiences, and a more sustainable engineering environment — makes it essential. We are building systems that will serve customers well for the next generation of financial services.
Key Takeaways
- Legacy mainframe systems create deployment bottlenecks that slow innovation and feature delivery.
- Data liberation through event streaming is the essential first step in modernization.
- Reverse engineering legacy code with AI assistance accelerates understanding, but must be validated thoroughly.
- Continuous data quality validation protects customers during the transition period.
- Modern microservices enable independent teams to deploy features without lengthy coordination.
- Circuit breaker patterns provide safety nets when quality thresholds are exceeded.
- Bidirectional synchronization maintains consistency between legacy and modern systems during migration.
The journey from mainframe to cloud is complex, but every challenge we solve brings us closer to delivering the experiences our customers deserve.
Like what you’re reading? Learn more about how we work across product, experience and technology by subscribing here.
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.
메타데이터
- post_id
- 5b14f4e57357
- slug
- modernizing-chase-credit-card-from-mainframe-to-cloud-5b14f4e57357
- url
- https://medium.com/next-at-chase/modernizing-chase-credit-card-from-mainframe-to-cloud-5b14f4e57357
- canonical_url
- https://medium.com/next-at-chase/modernizing-chase-credit-card-from-mainframe-to-cloud-5b14f4e57357
- author_url
- https://medium.com/@next-at-chase
- status
- ok
- fetched_at
- 2026-06-12 07:40:50