Fifteen years building and scaling distributed systems, across the industry's move from bare-metal servers and monoliths to cloud-native, Kubernetes and GitOps. I take on the work teams postpone: technical debt, CI/CD built from nothing, and keeping things up.
Dozens of microservices, each with a hand-built pipeline that had long since drifted from its neighbours. Reduced them to one template: a service declares its type and gets build, tests and deployment already assembled. Releasing stopped being a coordinated multi-day event — about fifteen minutes now, with no downtime.
Standardised delivery across dozens of microservices that had each grown their own pipeline. One template, opted into by declaring a service type, replaced a set of copies that had drifted apart the moment they were duplicated.
Release time dropped from a multi-day coordinated event to roughly fifteen minutes, deployed without downtime. The effect worth naming is second-order: once releasing became cheap, teams shipped smaller changes more often, and smaller changes are what actually brings incident counts down.
Key Achievements
Cut release time from days to about fifteen minutes
Standardised CI/CD across dozens of services
Introduced zero-downtime deployment as the default
Added dependency and image scanning to every pipeline
Made rollback a ninety-second routing change
Tech Stack
GitLab CI · Jenkins · Docker · Kubernetes · Helm · Ansible · Bash · Linux