Banking Software Design for Financial Corporation

Azati designed a new architecture for a financial institution to reduce the load on the back-end system and optimize the processing of users’ requests. The solution included the transformation of a monolithic service into microservices, which significantly improved the performance and scalability of the system.

Discuss an idea

All Technologies Used

D3
D3
Oracle
Oracle
WSO2
WSO2
Java
Java

Motivation

The main objective was to redesign the banking service architecture to optimize its performance. The mobile application was taking around 15 seconds to load due to an inefficient monolithic backend service. The Azati team’s goal was to break down the service into smaller, independent microservices to improve scalability, speed, and stability.

Main Challenges

Challenge 1
Infrastructure Decision

The team had to decide between using a third-party cloud provider or creating a self-managed cloud architecture, considering factors like safety, legislation, and development time.

Challenge 2
Transition to Microservices

Migrating from a monolithic architecture to a microservices-based solution required careful planning and approval from various stakeholders, making the transition slow and challenging.

Challenge 3
Unoptimized SQL Requests

The existing service was making multiple small SQL requests instead of one complex query, causing delays due to additional post-processing and excessive resource usage.

Key Features

  • Microservices Architecture: The system was split into several smaller, independent microservices, improving scalability and resource management.
  • Cloud-based Infrastructure: The new design utilized cloud-based microservices to handle load distribution and reduce single points of failure.
  • Optimized Performance: By eliminating unnecessary requests and optimizing SQL queries, the overall system performance was significantly improved.
  • Separate Operation History: Moving the operation history to a different screen improved the app’s loading time and overall user experience.

Our Approach

Analyzing Architecture and Identifying Bottlenecks
The team analyzed the existing architecture, identified performance bottlenecks, and proposed transitioning to a cloud-based microservice architecture.
Microservice Transition and Stress Testing
After splitting the monolithic service into microservices, engineers conducted stress testing to validate the solution’s efficiency.
Improving Load Times
Azati also recommended moving the operations history to a separate screen to improve load times.
Documentation Preparation
The team prepared comprehensive documentation for further development and future integration with Spring Cloud.

Project Impact

Improved mobile app performance: Azati's redesign significantly improved the mobile app's performance, reducing load times and enhancing scalability.

Increased system stability: The transition to microservices led to increased stability, ensuring that service failures didn’t affect the entire system.

Enhanced scalability and flexibility: The new architecture provided scalability and flexibility, enabling easier scaling of services based on demand and fostering a more robust infrastructure.

Better operational efficiency and user satisfaction: The customer experienced enhanced operational efficiency and better end-user satisfaction.

Future development plans: The customer postponed further development due to the COVID-19 pandemic, but Azati plans to finalize the MVP once conditions improve.

Ready To Get Started

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.