Engineering Playbook

Golden Paths

Paved Roads, Templates, and Cookiecutter.

Golden Paths (Paved Roads)

Netflix coined the term "Paved Road." The idea is simple: "You can build however you want, but if you build it this way, the platform team supports you for free."

Why Golden Paths?

  • Cognitive Load: A dev shouldn't have to decide "Which Docker base image?" or "How do I configure logging?".
  • Standardization: If everyone uses the same build tool, upgrading OpenSSL across the company takes a day, not a year.

The Template Engine

The start of a Golden Path is the "New Project" experience.

1. Cookiecutter / Yeoman

CLI tools that take a template repo (with placeholders like {{ project_name }}) and generate a new folder.

  • Pros: Simple, works locally.
  • Cons: Hard to discover.

2. Backstage Scaffolder

A UI-based wizard.

  1. Dev selects "Spring Boot Microservice".
  2. Fills in Name, Team, Java Version.
  3. Backstage creates the Repo, sets up the GitHub Actions, provisions the ECR repo, and registers it in the Catalog.

What's in a Path?

A complete Golden Path includes:

  1. Skeleton Code: The Hello World app.
  2. CI/CD Pipeline: GitHub Actions .yaml pre-configured.
  3. Infrastructure: A Terraform module connection (or a values.yaml for Helm).
  4. Observability: Pre-wired libraries for Prometheus/OpenTelemetry.
  5. Linter/Formatter: Pre-commit hooks set up.

Don't be a Gatekeeper

Golden Paths are optional. If a team needs to use Rust for a specific performance reason, let them go "off-road."

However, remind them: "If you go off-road, you fix your own flat tires." (They manage their own patching, security, and CI).