# Legacy modernization without switching the system off

I modernize live software systems that cannot be taken offline for a rewrite. The usual case is a content or commerce platform on an ageing CMS — Sitecore, Umbraco, Magento — that has to move to a headless front end on Next.js and a current content layer, while editors keep publishing and the public URL keeps returning 200. I have done this as a senior engineer on enterprise migrations: Sitecore 9.2 to Sitecore XM Cloud with a headless Next.js front; Umbraco and Magento to Contentful and Vercel. The work is data, URLs, editor workflow, and incremental cut-over — not a greenfield demo that never receives production traffic.

## Who this is for
- Companies whose public site or content platform is trapped on a CMS version that is out of support.
- Teams that already bought a headless CMS and still have the old site answering production.
- Engineering leaders who have been sold a rewrite and want a staged alternative.

## Rewrite, strangler, or stay
Modernization is a risk decision. The repository age is not the criterion.
### Stay and contain if the constraint is not the stack
If delivery is slow because of process or missing tests, a new CMS will not help. Fix the constraint.

### Strangle if the system earns money while you migrate
New work goes to the new path. Old paths freeze except for legal and incident fixes. This is slower to announce and faster to survive.

### Rewrite only when the old model is the bug
A commerce information architecture that cannot express the business is a candidate. A React version bump is not.

### Never migrate content without an owner for each type
Unowned fields become 'dump into rich text'. That is how you pay twice.


Canonical: https://ihar-ivaniuk.com/en/services/legacy-modernization
