AS

Synechron · Jun 2021 – Feb 2025

Migrating a securities platform to microservices

We moved a securities transaction platform for investment banks from a legacy Spring based monolith to Spring Boot microservices, then upgraded it to Spring Boot 3 and Java 17.

Role
Tech lead, hands-on
Stack
Java 17 · Spring Boot · Spring Data JPA · React · Jenkins · Docker · SonarQube

What I decided

  • Migrated the monolith to a service-based architecture on Spring Boot and Spring Data JPA, with a React front end.
  • Designed the RESTful APIs, and the exception handling and logging used across the services.
  • Automated the build and deployment pipelines with Jenkins and Docker.
  • Upgraded the application from Spring Boot 2 to Spring Boot 3 and Java 17, on-site with the client in Canada.
  • Added caching and optimised database queries.

Outcome

Application performance improved by 40% with the new architecture, and maintenance costs dropped by 25% with automated pipelines. The upgrade fixed 100% of the pre existing Black Duck vulnerabilities, and caching and query work cut response times by a further 20%.

The migration

The application manages securities transactions for investment banks.We moved it from a single monolith to a service-based architecture on Spring Boot and Spring Data JPA, with a React front end. I designed the REST APIs and the shared exception handling and logging. Automated Jenkins and Docker pipelines meant more services did not mean more release work.

Application performance improved by 40%, and maintenance costs dropped by 25%.

The upgrade

In 2024 I moved on-site with the client in Mississauga, Canada, and led the upgrade from Spring Boot 2 to Spring Boot 3 and Java 17. It fixed 100% of the outstanding Black Duck vulnerabilities. We also added caching and optimised database queries, which cut response times by 20%.

We kept code quality in check with SonarQube and JUnit, and used libraries like Lombok and MapStruct to cut boilerplate.

← All case studies