CI/CD Pipelines
Standardized, reusable pipelines that cut deployment times from hours to minutes.
Overview
Twelve engineering teams were each maintaining their own bespoke CI/CD pipelines — some using Jenkins, some GitHub Actions, none consistent. Builds took up to 90 minutes, and pipeline failures consumed hours of engineering time weekly debugging YAML rather than building features.
The Challenge
No standard pipeline template existed. Every team reinvented build caching, test parallelisation, and deployment gates from scratch — with wildly inconsistent quality. Build times averaged 70-90 minutes, and a third of pipeline failures were infrastructure issues, not code issues.
Approach
- Designed a reusable GitHub Actions workflow library — teams compose pipelines from shared, versioned building blocks
- Introduced dependency and build caching strategies, cutting redundant compilation and package installation
- Parallelised test suites across matrix jobs, splitting unit, integration, and E2E tests into concurrent stages
- Migrated deployment from imperative scripts to GitOps with ArgoCD — Git is the single source of truth for what's running
- Added automated rollback on failed health checks post-deployment, removing manual incident response for bad releases
Technology Stack
Results — Before vs. After
Average build time
Deployment lead time
Pipeline-caused failures
Engineer hours/week on pipeline debugging
Outcome
Build times dropped from ~85 minutes to 14 minutes. Lead time for changes fell from days to under an hour. Engineers got back roughly 16 hours per week per team that was previously lost to pipeline firefighting.
Facing a similar challenge in your organisation?
I work with engineering teams and businesses to design, build, and modernise cloud platforms — backed by a network of trusted specialists for execution at any scale.
Get In Touch