· Architecture  · 2 min read

Lessons from Migrating a €10M/Month Monolith to Microservices

What I learned leading a .NET Framework to .NET Core migration on Azure Kubernetes — without taking down a system that processes millions in food orders.

What I learned leading a .NET Framework to .NET Core migration on Azure Kubernetes — without taking down a system that processes millions in food orders.

Context

When I joined the project, Allsop RASP was a successful .NET Framework monolith processing €10M/month in food distribution orders across Ireland. It worked — but it was hitting scaling limits, deployment was painful, and the technology was aging fast.

The mandate: modernize everything without breaking what works.

The Approach

We chose the Strangler Fig pattern — incrementally replacing monolith components with microservices rather than a risky big-bang rewrite.

Tech Decisions

  • .NET Core + ABP Framework — Gave us clean architecture patterns out of the box
  • Azure Kubernetes Service (AKS) — Container orchestration without managing cluster infrastructure
  • Terraform — Infrastructure as Code for repeatable deployments across regions
  • Event-driven communication — Decoupled services that could fail independently

Key Lessons

1. Database-per-service is non-negotiable

We started with a shared database and quickly learned why every microservices book warns against it. The coupling was invisible until it wasn’t.

2. Invest in observability before you need it

Distributed tracing, centralized logging, and health checks saved us countless debugging hours. Set this up on day one, not after the first production incident.

3. The team matters more than the architecture

We had junior developers building critical services. The solution wasn’t to give them simpler work — it was to pair them with seniors and invest in DevOps workshops. The team grew faster than the system.

4. Zero-downtime deployment is a feature, not a luxury

For a system processing live orders, we couldn’t afford deployment windows. Blue-green deployments on AKS made this achievable from the start.

Results

  • €10M/month in revenue, zero downtime during migration
  • 200+ B2B users across Ireland
  • Deployment time reduced from hours to minutes
  • Team capability grew — juniors became confident service owners

The system is now ready for expansion to the US and European markets. That’s the real ROI of good architecture: it doesn’t just solve today’s problems, it enables tomorrow’s growth.

Back to Blog

Related Posts

View All Posts »