Microservices

How to migrate three monoliths into 120 services without a dedicated budget

Five years.

3 min readInfoQ
How to migrate three monoliths into 120 services without a dedicated budget

Five years to dismantle three HCM monoliths into more than 120 domain microservices, all without a dedicated budget line. That is not a story about technology; it is a story about discipline. Prashanth Pasham's account of this migration is refreshingly practical, and it deserves attention because it sidesteps the usual heroics. The team's rule was simple: every new feature gets built as its own service. No exceptions. That constraint forced them to stop bolting functionality onto aging systems and instead let the architecture grow organically around actual user needs. The result is a roadmap for anyone stuck in the slow grind of legacy modernization, and it pairs well with Monitor Cypress Tests with Grafana: Persistent Observability for Your Data, where persistent observability is the quiet enabler of confident change.

The pull-based migration strategy is the real takeaway here. Instead of a big-bang rewrite or a forced freeze on features, the team let new services "pull" data and logic away from the monoliths over time. This is not the sexiest approach, but it is the most honest one. It acknowledges that you cannot stop delivering value for five years while you refactor. What you can do is make a rule that the old codebase never grows, only shrinks. That is a hard thing to enforce, and it is worth asking how many teams have the organizational spine to stick with it. The tools they used matter less than the principle: migration is a side effect of disciplined feature delivery, not a project you schedule. This connects to Scale AI Workflows: Modernizing APIs with Architecture as Code, where the emphasis is on codifying the boundaries so that change becomes predictable rather than terrifying.

Cost control was another quiet victory. Without a dedicated budget, the team had to be smart about infrastructure and tooling, likely leaning on patterns that reward small, independent services. But let us be clear: this worked because they had a clear rule, not because they had better tools. The problems they hit along the way are probably familiar to anyone who has done this work, and the account does not pretend otherwise. The open question is whether this approach scales beyond a single team's grit. Most organizations fail not because they lack technical skill, but because they let the monolith keep growing while claiming to modernize. If you are a reader staring at your own three monoliths, the concrete takeaway is this: stop planning the migration and start building your next feature as a service, even if it is ugly, even if it is small. Let that rule do the heavy lifting. The hard-stop rule is not a technique; it is a refusal to keep adding weight. Watch how your team reacts when you suggest it, because that reaction will tell you more about your organization's future than any architecture diagram ever will.

From InfoQ

A payroll and HR software team rebuilt three monoliths into over 120 smaller services over five years, with no dedicated migration budget. Every new feature was built as its own service instead of changing the old ones. The article covers the pull-based migration, the tools that made this possible, how costs were kept down, and the problems the team ran into along the way.

Read the original at InfoQ