Enabling rapid and reliable delivery of complex applications with microservices
About the company
A prominent U.S.–based financial institution.
Challenge
The company’s core application was built on a monolithic architecture over many years, resulting in a massive codebase. The applications were tightly coupled and with growth in business demands, rapidly releasing new features was becoming complicated. Due to the complexity of the monolithic application, the company faced more extended development and deployment cycles, which significantly slowed down the time to market.
Other concerns included a longer time to add new capabilities, performance issues and managing multiple unstable environments. This scenario demanded an extensive Information Technology team split based on N-tier architecture. The company was looking to move to a microservices architecture model to enable rapid, frequent and reliable delivery of its applications.
What we did
- Microservice architecture design and implementation
- Continuous integration/continuous delivery (CI/CD) pipeline
- Representational State Transfer/GraphQL Application Programming Interfaces (REST/GraphQL APIs)
- Managed services for Software Development Life Cycle (SDLC)
Solution
Our Cloud, Applications & Infrastructure Solutions experts digitally transformed the monolithic web application to reactive microservices using state-of-the-art architectural patterns to deliver iterative, incremental and predictable capabilities to multiple parallel product lines.
- Architected and designed a distributed framework, message queues and asynchronous patterns
- Designed and developed loosely coupled, message/event-driven, technology-agnostic microservices
- Implemented individually deployable microservices with end-to-end monitoring, health checks and alerts
- Deployed a multi-cloud-ready solution to support new business requirements in the future easily
- Revised the team structure with teams organized around product lines for enterprise-scale distributed microservices development
- Implemented no-downtime microservices CI/CD to provide an always-available experience
- Architected and designed CI/CD pipelines to test and deploy iteratively and automatically
- Deployed bleeding-edge performant and horizontally scalable REST/GraphQL APIs built using best-fit technologies
Unisys provided managed services to deliver an end-to-end solution with responsibilities across the entire SDLC. As part of our managed services, we designed and developed validation strategies to test the distributed systems around multiple vectors in parallel.
Result and outcomes
Our team delivered the following outcomes and benefits by diversifying a monolithic application into a microservices architecture to realize the following advantages:
5+
teams delivering to independent product lines vs. a single large team
20+
message-driven, autonomous, performant microservices developed
5x
increase in speed to release feature updates
4x
improvements in application performance with horizontal scalability
100%
multi-cloud-ready for reliable delivery of large applications
Business benefits
- Rapid, frequent and reliable delivery of application features
- Faster time to market
- Closed feedback loop to iterate rapidly
- Reduced risk with automatic rollbacks
- Zero downtime
Technical benefits
- No dependency deployments
- Increased release confidence
- Distributed, performant and horizontally scalable architecture
- Multi-cloud-ready