_CORE
AI & Agentic Systems Core Information Systems Cloud & Platform Engineering Data Platform & Integration Security & Compliance QA, Testing & Observability IoT, Automation & Robotics Mobile & Digital Banking & Finance Insurance Public Administration Defense & Security Healthcare Energy & Utilities Telco & Media Manufacturing Logistics & E-commerce Retail & Loyalty
References Technologies Blog Know-how Tools
About Collaboration Careers
CS EN
Let's talk

Legacy Modernization

Modernize gradually. Without big-bang rewrite.

70% of big-bang rewrite projects fail. We modernize using the strangler fig pattern — every step brings value and is rollbackable.

30-50%
TCO reduction
Q1
Time to value
0
Migration downtime
>90%
Project success rate

Why not big-bang rewrite

The statistics are clear: 70% of large rewrite projects exceed budget by 2×+ or fail completely. Reasons:

  • Scope creep — “Since we’re doing it again, let’s also add X, Y, Z”
  • Knowledge loss — Nobody knows why legacy does what it does. Edge cases appear only in production.
  • Dual maintenance — 12-24 months maintaining two systems in parallel
  • Big bang risk — D-Day: you switch and hope

The Strangler Fig pattern eliminates all these risks.

7-step modernization playbook

Step 1: Stabilization and measurement (2-4 weeks)

Before you start changing, you need to know where you are. We deploy monitoring, collect baseline metrics, identify bottlenecks. Output: legacy system health report with concrete numbers.

Step 2: Domain mapping (1-2 weeks)

Event Storming workshops with domain experts. We map bounded contexts, dependencies, data flows. We identify candidates for first migration — modules with fewest dependencies and highest value.

Step 3: API Gateway (2-3 weeks)

Facade in front of legacy. All requests go through gateway, routing rules decide who serves. New system behind gateway, legacy behind gateway. Switching at endpoint level.

Step 4: First module isolation (4-8 weeks)

We extract the first bounded context into a standalone service. Own database, own deployment, own monitoring. Anti-corruption layer protects the new service from legacy data model.

Step 5: Data migration (2-4 weeks per module)

CDC (Debezium) for real-time replication. Dual-write with reconciliation jobs. Consistency metrics — migration is complete when reconciliation shows 100% match for 7 days in a row.

Step 6: Traffic shifting (1-2 weeks per module)

Canary release: 5% → 25% → 50% → 100%. Automatic metrics decide on continuation. Rollback in seconds. Human intervention only for anomalies.

Step 7: Decommission (1-2 weeks per module)

Old module off. New module monitoring for 30 days after full rollout. Data archiving. Documentation. Celebration.

Data migration — the hardest part

Legacy systems have years of technical debt in data: - Inconsistent formats (date as string in 5 different formats) - Missing validation (NULL where it shouldn’t be, duplicates) - Implicit business logic in data (status codes nobody documented)

Our approach: 1. Analysis — Source data profiling, anomaly identification 2. Transformation rules — Mapping + cleaning + validation 3. CDC pipeline — Debezium for real-time sync 4. Reconciliation — Automatic source vs. target comparison 5. Rollback plan — For every step

Measuring success

Modernization without metrics is just rewriting. We measure:

  • Deployment frequency — From monthly to daily
  • Lead time — From weeks to hours
  • MTTR — From hours to minutes
  • Change failure rate — Under 5%
  • TCO — Total cost of operation and development
  • Developer satisfaction — Yes, we also measure team satisfaction

Časté otázky

6-18 months depending on system size. But we deliver value from the first quarter — better monitoring, faster deployments, reduced operational costs.

Every step is rollbackable. The old system runs in parallel until the new one proves its quality. We never disconnect legacy until the new system passes all quality gates.

No. Strangler fig enables parallel development — new features go into the new system, the old system is frozen for maintenance. The team doesn't block business.

Máte projekt?

Pojďme si o něm promluvit.

Domluvit schůzku