Skip to content
All projects
Platform & developer experience

Backstage Golden Paths

Cutting new-service provisioning from twelve days to under one, by making the safe path the fast one.

Result
12d → <1d
to provision a new service
Where
CleverTap
2023 to present
Stack
4 tools
Backstage · Terraform · AWS · GitOps

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.

  1. step: Engineerneeds a service
  2. step: Backstagegolden path template
  3. data: Terraform modulesnetwork · IAM · compute · storage
  4. control: Plan on PRreviewed change
  5. result: Provisionedunder a day
A form, reviewed modules, and a provisioned service, with no ticket in the path.

Approach

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. 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.