Legacy Modernization

A modern system in production, migrated from one that is failing, with no downtime for users and nobody left guessing how it works, over five to twelve months.

The buyer question this answers: Our old system is dying. Can you fix it without downtime?

Who this is for

  • A system that runs the business and that nobody left understands.
  • Software on a platform, framework, or vendor that is reaching end of life.
  • A product that cannot add features because every change breaks something.

Phase by phase

Reference timings for a typical engagement. The written scope gives you the dates for yours.

  1. 012–3 weeks

    Audit

    We read the code, map the data and integrations, interview the people who use it, and rank what must survive.

    We deliver
    A written audit: what the system does, what depends on it, and the recommended path.
    We need from you
    Access to code, data, and the people who know it.
  2. 022 weeks

    Target architecture and plan

    The new architecture, the migration strategy, and the order in which pieces move.

    We deliver
    Architecture, migration plan in stages, and the team plan.
    We need from you
    Decisions on what to keep, change, and retire.
  3. 0312–24 weeks

    Strangler build

    New components replace old ones behind the same interfaces, one at a time, with both running side by side.

    We deliver
    Each replaced piece live in production as it is ready.
    We need from you
    Testers who know the old behaviour, and weekly decisions.
  4. 043–4 weeks

    Data migration

    Data is cleaned, migrated, and reconciled, with rehearsals until the numbers match.

    We deliver
    Migrated data with a reconciliation report.
    We need from you
    Sign-off on the reconciliation.
  5. 051–2 weeks

    Cut-over

    The last traffic moves, the old system goes read-only, then off, with a rollback ready.

    We deliver
    The new system carrying all traffic, the old one retired.
    We need from you
    A maintenance window if any, and a go decision.
  6. 064 weeks

    Stabilise and hand over

    Monitoring, fixes, documentation, and your team taking the controls.

    We deliver
    Documentation, runbooks, and a stable system.
    We need from you
    Your team's time for handover sessions.

The stack for this workflow

  • Python or Node.js
  • PostgreSQL
  • Kafka for staged data flows
  • Docker
  • Terraform
  • GitHub Actions
  • Grafana
  • Sentry
  • Contract tests against the old system

What could go wrong

Every build has risks. These are the ones we plan for on this kind of project, and what we do about each.

Undocumented behaviour the business depends on is lost.

How we handle itThe audit interviews the people who use the system, contract tests capture current behaviour, and old and new run side by side so differences show up before cut-over.

Data does not reconcile.

How we handle itMigration is rehearsed repeatedly and signed off on a reconciliation report before the real one.

The project becomes a rewrite that never ships.

How we handle itThe strangler approach puts replaced pieces into production as they are ready, so value arrives monthly, not at the end.

Cost model: Dedicated team

Legacy systems reveal surprises. A dedicated team with a staged plan absorbs them without re-quoting, and you see progress in production every month.

No prices on this page. The scope phase ends with a written quote for your project.

Questions we get asked

Rewrite or refactor?

Usually neither in full. The strangler approach replaces pieces behind stable interfaces, keeping what works and retiring what does not. The audit says which pieces.

Can we keep running during the migration?

Yes. That is the point of running old and new side by side. Downtime is designed out rather than scheduled.

What if nobody understands the old system?

That is common and it is why the audit exists. Code reading, data analysis, and interviews rebuild the understanding before anything is changed.

How long before we see anything?

The first replaced component is usually in production within the first two months of the build phase.

Tell us what you are building.

We reply within one business day with how we would build it, what it would cost, and which engagement model fits.

  1. 01
    Tell us what you are building

    A short form or an email. No deck required, and "not sure yet" is a fine answer.

  2. 02
    A call with an engineer

    Within one business day. Technical questions get technical answers, from the person who would build it.

  3. 03
    A written scope and quote

    Fixed price where the scope is defined. The document is yours whether or not you go ahead.