Modernisieren ohne den großen Neuschreib
Ein Neuschreib verspricht einen Neuanfang und bringt meist einen langen Stillstand. Der ruhigere Weg: das alte System Stück für Stück ersetzen, während es weiter Wert schafft.
Dieser Artikel ist derzeit auf Englisch verfügbar.
Every long-lived product reaches the same moment. The code that carried the business for years starts to resist it. Releases slow down, simple changes take weeks, and the people who understood the original design have moved on. The obvious answer is to start again.
It is rarely the right one.
Why the big rewrite disappoints
A rewrite asks the business to pause while the team rebuilds what already exists. For months, users see nothing new. Meanwhile the old system keeps changing, because the business cannot actually stop, so the new one chases a moving target. When it finally launches, it is missing dozens of small behaviours nobody wrote down, because they lived only in the old code.
The new system is not wrong. It is simply young, and it has to relearn everything the old one knew.
Replace the system one slice at a time
The calmer path is to let the old and the new live side by side, and move work across in small, valuable slices.
- Put a seam in front of the old system. A routing layer, an API gateway or even a reverse proxy lets you decide, request by request, which system answers.
- Pick the slice that hurts most and is easiest to isolate. Often it is a screen users complain about, or a workflow that changes every month.
- Rebuild that slice properly, with tests, observability and a design that fits where the product is going.
- Route real traffic to it, carefully, and compare. Keep the old path available until the new one has earned trust.
- Repeat. Each slice makes the next one cheaper, because the shared foundations are already in place.
This pattern has a name in our industry, the strangler fig, after the vine that slowly grows around a tree until it can stand on its own. The name is grim. The practice is gentle.
What you gain
- Value from the first month. Users notice improvements while the work is still underway, and the business keeps shipping.
- Lower risk. Every step is small and reversible. A mistake costs a slice, not a year.
- Knowledge captured, not lost. Moving behaviour slice by slice forces the team to understand it, and to write it down as tests.
- A natural stopping point. Some parts of the old system may never need replacing. Modernize what blocks you, and leave alone what quietly works.
Where to start
Begin with an honest map: which parts of the system change most often, which ones break most often, and which ones users touch every day. Where those three overlap is your first slice.
If you are looking at an aging product and wondering whether to start again, talk to us first. The best modernization is usually the one your users barely notice, until they realise everything feels faster, clearer and calmer.