Skip to main content

Application Repositories as Golden Paths: Dockerfile, CI, and .k8s in Every Repo

· 5 min read
Platform Engineering Team

Our platform manages where and how services are deployed through GitOps repositories. But what about the application itself — the code, the build, the container? Until now, every team set up their own Dockerfile, wrote their own CI pipeline, and figured out their own image tagging strategy. The result was predictable: 10 teams, 10 different CI workflows, 10 different container build approaches, and zero consistency.

The Application Repository convention changes this. When a new service is scaffolded via Backstage, it delivers a complete, opinionated repository with source code, Dockerfile, CI pipeline, and a .k8s folder — giving the application team autonomy over their workload configuration while keeping the platform in control of the deployment model.

Golden Paths: How Backstage Templates Guarantee Correct-by-Default Services

· 5 min read
Platform Engineering Team

Documentation gets ignored. Runbooks get outdated. Wiki pages accumulate conflicting instructions from three different authors. When the "right way" to create a service exists only in documentation, every new service is a chance to deviate from convention.

Backstage Scaffolder templates change this equation. Instead of documenting the correct path and hoping engineers follow it, we encode the correct path into a form that produces correct output every time. This post is about how our template chain works, why the dependency order matters, and what happens when you click Create.

The ROI of Naming Things: How a 3-Segment Key Eliminated Cross-Team Confusion

· 5 min read
Platform Engineering Team

Naming things is famously the hardest problem in computer science. It is also, quietly, one of the most expensive. When four different teams name their namespaces four different ways, the cost shows up in incidents that take longer to diagnose, in onboarding sessions that turn into tribal knowledge transfers, and in a platform team that spends its weeks translating between systems instead of building.

This post is about how a single naming convention — three segments, one key — unified Kubernetes, ArgoCD, Backstage, and Crossplane. And why the return on investment was measured in days saved per week.

Building an Internal Developer Platform: From Ticket Hell to Self-Service in 30 Minutes

· 6 min read
Platform Engineering Team

Every platform team reaches the same inflection point. The ticket queue grows faster than the team. Engineers wait days for a namespace, a database, or an ArgoCD application — things that should take minutes. The platform team becomes the bottleneck for every team trying to ship.

We hit that wall. This post is about how we got out of it.