Enterprise systems consultancy
EN-GB · 12 clientsSystems that cannot go down, replaced while they run.
We modernise legacy platforms for regulated industries — migrations, integrations, and the reliability work that keeps them standing afterwards.
- Practices
- 06
- Engagements
- 06
- Offices
- Manchester · Oslo
- Practising since
- 2014
Fig. 01 — target stateSEP 1.00×
Trusted with load-bearing systems
12 organisations11 of 12 listed with consent to link
What the estate looks like
Measured, not projected01 / 04
99.98%
Uptime across the platforms we run
02 / 04
41
Core migrations delivered since 2014
03 / 04
6.2M
Transactions cleared daily on systems we built
04 / 04
11
Countries where we support live systems
Capabilities register
06 practicesFour positions we do not trade away
Commitments · not preferencesDual-run
No big-bang cutovers.
Old and new run side by side against live traffic until the outputs reconcile exactly, and rollback stays available at every step. A migration that can only go forwards is a migration with one chance to be right.
Fixed discovery
Discovery is fixed price, and it is yours.
The system map, the risk register and the costed options are delivered whether or not you engage us afterwards. If discovery finds that you should do nothing, or hire someone else, that is the finding we hand over.
Shared repo
Your engineers are in the repository from week one.
We pair rather than deliver. There is no separate consultant codebase, no handover cliff at the end, and no knowledge that exists only in our heads when the last invoice is paid.
No managed ops
We build the capability, then leave.
We do not sell ongoing managed operations, and we will not take your pager permanently. Teams that outsource on-call lose the feedback loop between the code they write and how it behaves at 3am, and reliability decays quietly from there.
Selected engagement
Banking · 2024-10-14Client — Nordvik Bank
Core banking migration with zero customer downtime
Nordvik Bank ran 2.4 million retail accounts on a COBOL core written in 1997. We moved every one of them onto an event-sourced ledger on AWS in nine months against a fourteen-month board forecast, and no customer lost access for a single minute.
The problem
The ledger closed for a four-hour batch window every night, which meant card authorisations ran on balances that could be sixteen hours stale. Only two people in the bank could still change the interest-accrual code, and one of them retired in March. The incumbent supplier had costed a fourteen-month replacement that ended in a weekend big-bang cutover — a two-day freeze on payments for 2.4 million customers. Finanstilsynet, the Norwegian regulator, had refused that plan twice on resilience grounds before Nordvik called us.
What we did
We refused the big bang and built a dual-run instead. Debezium streamed change events off the mainframe into Kafka, a new event-sourced ledger consumed them, and a reconciliation service compared both balances to the øre every fifteen minutes. Once the two ledgers had matched for thirty consecutive days we moved customers across in eleven cohorts of roughly 220,000, smallest first, each one rehearsed against a production-shaped copy with a tested rollback that we exercised for real twice. Temporal ran the cutover workflows so a wave could be paused mid-flight rather than abandoned. The mainframe stayed authoritative until the final wave landed; only then did we reverse the flow and decommission it.
Measured outcome
0 min
Customer-facing downtime across 11 cutover waves
9 months
Delivered against a 14-month board forecast
£2.1M
Annual mainframe run cost removed
- Sector
- Banking
- Duration
- 9 months · Jan–Sep 2024
- Practices engaged
- Platform modernisation · Cloud migration · Data engineering · Reliability engineering
- Principal stack
- Java 21 · Spring Boot 3 · PostgreSQL 16 · Apache Kafka · Debezium · Temporal
In the client’s words
HealthcareThe cutover itself took a weekend. The eleven months before it went on proving, record by record, that 2.3 million patient files would land intact. Given the same choice I would spend the eleven months again.
How an engagement runs
Four stages · each ends in something you keep- 01
Discovery
Four to six weeks with your engineers, your operators and your auditors, mapping the system as it actually behaves rather than as the documentation claims. We trace the real data flows, price the cost of doing nothing, and name the three failure modes most likely to hurt you first. You keep the survey — a written system map, a risk register and a costed set of options — whether or not you hire us for anything after it.
- 02
Architecture
We design the target state and, more importantly, the sequence that gets you there while the current platform stays up. Migration order, dual-run boundaries, rollback points, and where the regulatory controls attach. You keep the architecture, the sequenced plan and the estimates behind it: enough to build it with your own team, put it out to tender, or hand it to another firm entirely.
- 03
Delivery
Increments that reach production, typically every two weeks, each one reversible and each one running alongside the system it replaces until the numbers agree. Your engineers work in the same repository as ours from day one. You keep working software from week six rather than a demonstration at the end, and a shared codebase that is never ours to withhold.
- 04
Handover
We rehearse the handover before we mean it: your team takes the pager while we are still on the call, then takes it for real. Runbooks tested by someone who has never seen the system, an alerting set that has been pruned rather than accumulated, and the test estate that makes the next change safe. You keep a platform your own people can run — our last invoice should be the last one you need to pay us.
You keep — survey · architecture · working software · a platform your own team runs
Notes from the practice
3 of 6 published- Engineering5 min read
Reading a COBOL codebase you did not write
The programs are the last thing to read. Start with the job control and the copybooks, because that is where forty years of business rules were actually written down.
By Halvard Bruun
- Reliability5 min read
Cutover rehearsals, and why we do six
A 412-step runbook took 19 hours on its first rehearsal against a 9-hour window. By the sixth it took 6 hours 40. The rehearsals were not practice — each one was designed to fail differently.
By Priya Raghunathan
- Engineering4 min read
The integration nobody documented
Every legacy platform has interfaces that appear in no diagram and no register. Here is how we find them before cutover finds them for us — and why the interface diagram is the last place to look.
By Halvard Bruun
Next step
Enterprise systems consultancyTell us what is holding the estate together.
Discovery is four to six weeks and fixed price. You keep the system map, the risk register and the costed options at the end of it, whatever you decide to do next.
- Telephone
- +44 161 496 0114
- Offices
- Manchester, United Kingdom
- Oslo, Norway