Context
250+ product engineers needed infrastructure to ship. Each new service meant a ticket, a queue, and a platform engineer assembling much the same set of resources as last time.
The problem
Twelve days is not a tooling problem, it is a queue problem, and queues are a symptom. Every recurring request was evidence of work that should not have needed a human. The risk in fixing it is the usual one: guardrails that slow people down get routed around, and then the guardrails protect nothing.
- step: Engineerneeds a service
- step: Backstagegolden path template
- data: Terraform modulesnetwork · IAM · compute · storage
- control: Plan on PRreviewed change
- result: Provisionedunder a day
Approach
- 01
Treat recurring infrastructure work as a product bug
Each request that arrived repeatedly became a candidate for a module or a template rather than a faster ticket.
- 02
Build reusable Terraform modules, not snippets
Networking, IAM, compute and storage as composable modules, so a new service is an assembly of reviewed parts rather than a fresh authoring exercise.
- 03
Expose them as Backstage golden paths
Self-service scaffolding puts the modules behind a form. An engineer provisions a service without needing to know Terraform, and without filing a ticket.
- 04
Template the whole of new-service provisioning first
New-service provisioning was templated before anything else because it was the request that crossed the most systems and teams at once. Launching a service used to mean a Platform ticket, then Terraform, then IAM and networking, then CI, then deployment configuration, then observability. It is now a short Backstage form, and from that one input an engineer gets Terraform assembled from vetted modules, a GitHub Actions pipeline, ArgoCD and Helm registration, an SLO dashboard, and alert routing to the owning team.
- 05
Generate ownership and alerting from the same metadata
The observability half matters more than it looks. Dashboards and alert routing come from the same metadata that created the service, so it is difficult to stand something up whose alerts go nowhere. A service should be observable before it takes traffic, not after its first incident, and the only reliable way to get that is to make it a property of creation rather than a follow-up ticket.
- 06
Make the paved road genuinely shortest
The golden path had to be the fastest route to production, or engineers would work around it. Adoption is the measure of whether that succeeded.