Skip to content
8 min read

The strangler-fig rebuild: faster than a rewrite, every time

Why we keep refusing greenfield rewrites of legacy apps and what we do instead. A pattern that has shipped under brittle PHP, ColdFusion, and one extremely angry Rails 3 app.

Greenfield rewrites of legacy systems are seductive and almost always wrong. By the time the new system is feature-complete, the old one has moved, the team is exhausted, and the business has been frozen for a year.

We use the strangler-fig pattern by default: stand up the new system next to the old one, route slices of traffic incrementally, and decommission old endpoints once the new ones are proven in production. The old system keeps running. The business keeps moving. The team keeps shipping.

It feels slower at first. It is dramatically faster end-to-end. We've used it on PHP monoliths, ColdFusion intranets, Rails 3 apps, and one VB.NET system that nobody wants to discuss. It always works.

ModernizationEngineering

Ready when you are

Want this kind of thinking on your project?

A 30-minute call is enough to see if we're a fit.