Case study · 2026
Rebuilding a deploy pipeline nobody trusted
Meridian shipped twice a week and dreaded both. Builds took fifteen minutes, failed for reasons nobody could reproduce, and the rollback plan was a person who knew which commit to revert. The brief was to make deploying boring.
Where the time actually went
The first surprise was that the pipeline wasn’t slow — it was repetitive. Three of the fifteen minutes were work. The rest was the same dependency tree being resolved four times across four jobs that each started from nothing.
The build wasn’t waiting on the code. It was waiting on itself.
What changed
- One install step, cached and shared across jobs
- Type checking moved off the critical path and run in parallel
- Preview URLs for every pull request, database branch included
- Rollback promoted a previous build rather than reverting source
The last one mattered most. Reverting a commit means another build and another fifteen minutes of doubt. Promoting an artefact that already shipped takes nine seconds and cannot fail in a new way.
The configuration
build:
cache: [node_modules, .next/cache]
parallel:
- typecheck
- lint
artifacts:
retain: 30d # enables instant rollbackResults
Build time fell from just over fifteen minutes to four. Failed deploys stopped being events. The team went from two releases a week to eleven, and nobody made a decision to do that — it just stopped being expensive.
- 15m 20s → 4m 05s median build
- 2 → 11 releases per week
- 41 minutes → 9 seconds to roll back
Six months on, the pipeline has not been touched. That was the point.