Legacy Modernization
Replace outdated software — rebuild instead of endlessly patching. VB6, old PHP, MS Access, Delphi, early C#. Years of C#/C++ history meet modern stacks (Django, Go, Postgres). Honestly priced audit entry point.
Why this is its own offering
VB6 still runs. On thousands of machines in German mid-market companies. For 20+ years. Reliably. But the original developer is retired, the IDE only runs on Windows 10 with tricks, and nobody in-house can implement a new requirement. Same applies to old MS Access databases with 15 years of history, early PHP 4 codebases, or first-generation C# WinForms solutions from 2006.
Modernization is not a standard web project. You need:
- Someone who understands the old world — not just “let’s replace that with React”.
- Someone who takes migration risk seriously — unchecked data migration destroys trust.
- Realistic packages — not everything has to be replaced at once.
Three packages
💡 Modernization Audit — 2-3 days, written recommendation
You don’t yet know whether and how to modernize. The audit clarifies that.
- Inventory: which languages, frameworks, libraries run here? Which DB? Which interfaces?
- Risk assessment: EOL status, CVE landscape, GDPR/NIS2 gaps.
- Options outline: continue operating, partial modernization, full rebuild.
- Cost estimate for each option, with assumptions and open questions documented.
- Written recommendation as a PDF.
Common next step: either a retainer (see retainer package) for ongoing minor adjustments to the old system, or partial/full modernization.
Effort: 2-3 working days. Price: €1,900.
Partial Modernization — one critical module rebuilt
Part of your legacy software is the pain. Reporting is unusable. The web frontend is stuck 15 years in the past. The database access layer is a security risk. We replace that one module — the rest of the old system stays as it is.
Typical candidates:
- Reporting module rebuilt (e.g., Jasper Reports instead of VB6 print code)
- Web frontend on legacy backend (modern SSR via Astro/Django templates, existing APIs)
- Database abstraction layer (ORM migration, e.g., replacing Access DB with Postgres)
- Authentication module (instead of basic Windows Auth: OIDC/Keycloak)
Effort: 4-6 weeks. Price: €6,900.
Full Rebuild — old system → modern stack
The old system has to go. We build in parallel — on a modern stack (Django or Go + Postgres + web UI) — and migrate in phases.
- Parallel operation: old and new run side-by-side for a time. Low risk.
- Data migration: with integrity validation before each step. No black box.
- Feature parity before shutdown, with a sign-off list per use case.
- Handover: docs, training, old-system shutdown, optional 6-month iteration retainer.
Effort: 8 weeks (for manageable systems). Price: €14,900.
Larger scopes (enterprise migrations with 10+ modules) we discuss in the audit first — no flat price, but a scope memo after discovery.
Why I can do this
My early IT years (2005-2013, see /en/ueber) were classical application development and interface programming:
- C# (.NET Framework 2.0 to 4.x) — WinForms, web services, DB access via ADO.NET
- C++ — for native components and legacy integration
- Interface programming — SOAP, XML, CSV, legacy protocols, everything that wasn’t REST
- Windows Server + Linux backend admin in the same person
This isn’t a marketing USP, it’s my real work biography. I understand old stacks without romance — I lived through them, know their pain points, and know why they were built that way at the time. They don’t collapse overnight — but they aren’t future-proof either.
On the modern stack (Django, Go, Postgres, Astro, Flutter) I’ve been productively active again since 2024 — with Claude Code as AI co-pilot. The combination is rare: old-stack experience + new-stack currency in one person.
What I don’t offer
- SAP migration or mainframe replacement (scope too large, requires specialist advisory — happy to refer).
- Pure code translation without architecture review: rarely worthwhile. If done, done right.
- “Only modernize the UI” without backend review: that’s a bandaid I won’t sell.
Process (full rebuild as example)
- Audit (2-3 days) — binding inventory.
- Scope memo (week 1-2) — migration plan, milestones, decision points.
- Parallel build (weeks 3-6) — new system is built, old continues unchanged.
- Data migration test (week 7) — dry runs with production data copy.
- Cutover (week 8) — switchover in a maintenance window, monitoring on high alert.
- Aftercare (30-90 days) — firefighting phase, sign-off, old-system shutdown or read-only archival.
Compliance aspects (important for legacy)
- GDPR data residency: old systems often store sensitive fields in plaintext. Migration is the right moment to fix that.
- NIS2 (since October 2024): many SMEs now fall under the directive. Old software with CVE gaps is a problem.
- IT Security Act 2.0: audit-capable log chains are becoming mandatory.
These compliance topics are part of every modernization — no upcharge.
Includes
- Inventory: language, dependencies, data schema, build chain
- Risk analysis: library EOL, security CVEs, compliance gaps
- Migration plan with milestones and decision points
- Parallel-operation strategy (old + new running simultaneously during migration)
- Data migration incl. integrity validation
- Training on the new system
- Optional: read-only archive of the old system for audit needs
- For full rebuild: modern stack (Django/Go + Postgres) with tests, CI/CD, documentation