Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Monolith to Microservices - The Modernization Playbook
New
Rating: 4.8 out of 5(19 ratings)
94 students

Monolith to Microservices - The Modernization Playbook

Transform legacy applications into domain-driven, cloud-ready microservices using DDD and Strangler Fig pattern.
Created byRahul Sahay
Last updated 8/2026
English
English [Auto],

What you'll learn

  • Modernize legacy monoliths into scalable microservices.
  • Apply the Strangler Fig Pattern in real projects.
  • Design domains using Domain-Driven Design (DDD).
  • Transform a monolith into a modular monolith.
  • Build production-ready .NET microservices from scratch.
  • Implement Clean Architecture and Vertical Slice Architecture.
  • Use RabbitMQ and the Outbox Pattern for messaging.
  • Create API Gateways for gradual service migration.
  • Enable observability using OpenTelemetry and distributed tracing.
  • Execute an end-to-end enterprise modernization strategy.

Course content

16 sections185 lectures20h 24m total length
  • Introduction10:01

    Explore a structured modernization journey from monolith to microservices, using modular monolith, strangler fig pattern, gateway routing, and outbox driven events with RabbitMQ, plus observability with distributed tracing.

  • Understanding Domain Discovery9:10

    Explore domain discovery within the modernization playbook by conducting a current state assessment, mapping business capabilities, domain events, bounded contexts, and a context map.

  • Github Strategy10:25

    Explore a GitHub strategy for migrating from monoliths to modular monoliths with a strangler gateway, domain discovery, and microservice extraction, guided by a branching plan and CQRS with clean architecture.

  • About the Solution Structure7:57

    Explore the solution structure for modernizing a legacy system, from front-end and gateway to microservices and domain discovery. See document microservice and modular monolith components fit this modernization journey.

  • Runtime Flow Demonstration2:33

    Demonstrate the end-to-end runtime flow of uploading a document through the gateway, queuing via RabbitMQ, and consuming integration events in a modular monolith path toward microservices, including email notifications.

  • About the Program6:42

    Meet the instructor behind the modernization playbook, leveraging 18 years of full-stack and ai/ml experience, a healthcare patent, and mentoring to guide monolith to microservices projects.

Requirements

  • Basics of Programming, C#, .Net Core, Docker.

Description

Legacy monoliths are everywhere. Rewriting them from scratch is risky, expensive, and often unnecessary.

In Monolith to Microservices - The Modernization Playbook, you will learn how to modernize a real-world legacy application step by step using practical software architecture patterns used in enterprise systems.

This is not a theory-only microservices course. You will work through a complete modernization journey: starting with a monolith, discovering domain boundaries, moving toward a modular monolith, introducing domain events, adding a Strangler Fig API Gateway, extracting a real microservice, adding a service-owned database, implementing the Outbox Pattern, integrating RabbitMQ, and finally adding observability and resilience with OpenTelemetry, Aspire Dashboard, and Elastic/ELK.

You will learn how to break a monolith safely without breaking the business.

The course uses a healthcare claims processing system as the case study, making the architecture realistic enough to demonstrate real modernization decisions: claims, members, policies, providers, documents, payments, notifications, audit trails, and reporting.

By the end, you will understand not only how microservices are built, but how they are extracted from existing systems in a controlled, domain-driven, production-minded way.

What You’ll Learn

  • Modernize a legacy monolith without a risky big-bang rewrite

  • Apply Domain-Driven Design to discover real service boundaries

  • Refactor a monolith into a modular monolith with clear module ownership

  • Use domain events to decouple business capabilities

  • Implement the Strangler Fig Pattern with an API Gateway

  • Extract a Documents microservice from an existing system

  • Add a service-owned database to remove shared database dependency

  • Implement the Outbox Pattern for reliable cross-service events

  • Replace local integration events with RabbitMQ

  • Add OpenTelemetry tracing, metrics, and logs

  • Use Aspire Dashboard for local observability

  • Understand how Elastic/ELK fits as a production-style observability option

  • Add basic gateway resilience, correlation IDs, and operational visibility

  • Build a modernization roadmap that is practical, incremental, and demo-ready

Who This Course Is For

  • .NET developers working with legacy systems

  • Backend engineers moving from monoliths to microservices

  • Software architects designing modernization roadmaps

  • Senior developers preparing for architecture responsibilities

  • Teams that want practical DDD, modular monolith, and microservices guidance

  • Developers tired of toy microservices examples and looking for a realistic migration path

Requirements

  • Basic C# and ASP.NET Core knowledge

  • Familiarity with REST APIs

  • Basic Docker knowledge is helpful

  • Some experience with enterprise applications or layered architecture is useful

  • No prior microservices migration experience required

Who this course is for:

  • .NET developers who want to modernize legacy ASP.NET Core monoliths into modular, cloud-ready applications.
  • Software architects designing modular monoliths, strangler gateways, microservices, and event-driven systems.
  • Solution architects planning safe enterprise application modernization without risky big-bang rewrites.
  • Technical leads guiding teams through monolith decomposition, service extraction, and distributed architecture.
  • Senior software engineers building clean architecture, CQRS, outbox pattern, RabbitMQ, and observability solutions.
  • Backend developers who want hands-on experience with ASP.NET Core APIs, EF Core, SQLite, RabbitMQ, and OpenTelemetry.
  • Full stack developers who want to keep a React frontend stable while modernizing backend architecture.
  • Enterprise application developers working on healthcare, insurance, claims, or workflow-heavy business systems.
  • Developers preparing for real-world system design discussions around monolith to microservices migration.