PAT-01 · Architecture pattern
Legacy core bridge
Modernise the experience without touching the system of record.
What it is
A thin middleware layer that lets a modern interface talk to an old core system over a clean, typed API — without rewriting the core. The legacy system stays the source of truth; the bridge translates, protects, and isolates.
When to use it
When the core works but is hard to change — decades of edge cases, regulatory rules, and undocumented integrations — and the business needs a modern, real-time experience on top.
Reach for a bridge when the cost or risk of replacing the core outweighs the friction of living with it. Don't, if the core genuinely can't meet a hard requirement like security, compliance, or a cost ceiling — then no seam will save you.
System shape
The bridge does three jobs: translate between the old data model and the one the new app wants; protect the core with caching, batching, and back-pressure; and isolate change, so the front end ships weekly while the core moves on its own slow, careful clock.
Failure modes
- Treating the bridge as temporary — it becomes load-bearing; design it to last.
- Letting the front end feel the core's latency, with no read model — slow, fragile UX.
- Writing straight through to the core, synchronously — outages when the core is busy.
- Queued writes with no reconciliation — silent data drift between the bridge and the core.
How we build it
We map the core's real contracts and failure modes first, then build the thinnest bridge that translates, protects, and isolates.
Reads go through a projected read model so browsing feels instant; writes are queued, made idempotent, and reconciled back to the core. The core is never modified.
Related
Next
Have a system like this to build?