Skip to content

The strangler-fig pattern, without the drama

How we migrate legacy monoliths one capability at a time, and the three mistakes that turn it into a two-system nightmare.

August 18, 2026, 8 min read

Big-bang rewrites fail for predictable reasons: the old system keeps changing, the new one never catches up, and the cut-over becomes a single moment of enormous risk. The strangler-fig pattern avoids this by growing new services around the legacy system until it can be switched off.

The first step is a routing layer — usually an API gateway or reverse proxy — that lets you send specific requests to new services while everything else still reaches the monolith. Choose a first capability that is valuable but loosely coupled, so you learn the migration mechanics without betting the business.

The most common mistake is sharing a database between old and new. It feels efficient, but it couples the two systems permanently. Instead, give each new service its own data store and synchronise with change-data-capture or events until the legacy path is retired.

Finally, measure progress by traffic, not by code. A dashboard showing what percentage of requests each system handles keeps everyone honest and makes the eventual shutdown of the monolith an uneventful Tuesday.

Tell us what you're building

A senior engineer will reply within one business day with questions, a rough approach and next steps. No sales script.