Modernization - Monolith to Microservices re-architecting and re-designing

RC

Project Description

The goal and objective of the project was to 1. Make this project SaaS based 2. Make the Application Multi-Tenant 3. Deploy it to Azure Cloud (making it Cloud ready) 4. Redefine the Branching and Release Strategy 5. Making the Project use tools like SonarQube within the DevOps Process 6. Above all Move the entire Service Stack (backend services) from Monolith to Microservices based Architecture 6. Convert the project to a more responsive front end design using Responsive Web Application design pattern. Huge tasks with limited timelines. Breaking the project into multiple packs and executing the project. Using fortnightly release cycles, redefining requirements into use cases/user stories and using Micro-frontend approach at the front end and Microservices architecture at the backend, finally using a domain driven design with a database first approach.

Highlights

Ahead of schedule
Under budget
Support from colleagues

Difficulties

Management had to be convinced
Equipment incompatibility
Steep learning curve
Large no. of people impacted
Cost overrun
Hard to meet schedule

Technical Skills Used

  • .NET CORE
  • Microservices Architecture
  • Docker and Kubernetes
  • API Gateway
  • SonarQube
  • GitHub
  • DevOps
  • SQL Server
  • REACTJS and REDUX
  • Azure Services