The Rise of the Platform Engineer
First there was Ops. Then DevOps. Then SRE. Now Platform Engineering is emerging. Are these just job title inflation, or is there something real here?
The Evolution
Traditional Ops (Pre-2010)
Developers write code → throw over wall → Ops deploys and maintains
Problems: slow, blame-shifting, siloed.
DevOps (2010s)
“You build it, you run it.” Developers take responsibility for production.
Problems: Every team reinventing the wheel. Cognitive overload on developers.
SRE (Google’s Model)
Software engineering applied to operations. Error budgets, SLOs, toil reduction.
Problems: SRE teams become bottlenecks. Hard to scale.
Platform Engineering (2020+)
Build internal platforms that enable developer self-service. Abstract away infrastructure complexity.
What is Platform Engineering?
Platform Engineers build the tools and systems that developers use to deploy and operate their applications.
┌─────────────────────────────────────────────────┐
│ Developer Interface │
│ (CI/CD, Deployment, Observability, Secrets) │
├─────────────────────────────────────────────────┤
│ Internal Platform │
│ (APIs, Automation, Self-Service Portals) │
├─────────────────────────────────────────────────┤
│ Infrastructure Layer │
│ (Kubernetes, Cloud, Networking) │
└─────────────────────────────────────────────────┘
Internal Developer Platform (IDP)
The product Platform Engineers build:
Components
- Service catalog: What services exist? Who owns them?
- Deployment pipeline: Push-button deploys
- Environment management: Dev, staging, prod provisioning
- Observability: Logs, metrics, traces—unified
- Secrets management: Secure by default
- Documentation: Auto-generated from code
Example: Backstage
Spotify’s open-source IDP:
# catalog-info.yaml
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: user-service
description: User management API
tags:
- python
- django
spec:
type: service
lifecycle: production
owner: team-platform
Register services, visualize dependencies, access docs—one portal.
Platform Teams vs DevOps Teams
| DevOps Team | Platform Team |
|---|---|
| Help dev teams deploy | Build tools dev teams use |
| Embedded in product teams | Centralized, product-focused |
| Ticket-based support | Self-service products |
| Manual interventions | Automated platforms |
Key difference: Platform treats infrastructure as a product with developers as customers.
Self-Service is the Goal
Bad experience:
Developer: "I need a database"
DevOps: "File a ticket"
[3 days later]
DevOps: "Done, here are the credentials"
Good experience:
Developer:
$ platform create database --type postgres --env staging
Created: postgres-staging-user-service
Connection string in: secrets/postgres-staging
Platform Products
Deployment
# developer writes
apiVersion: platform.company.io/v1
kind: Deployment
metadata:
name: user-service
spec:
replicas: 3
image: user-service:v1.2.3
# platform translates to
# - Kubernetes Deployment
# - Service
# - Ingress
# - HPA
# - PodDisruptionBudget
# - NetworkPolicy
Developers don’t write raw Kubernetes. They write simple intent.
Golden Paths
Pre-built patterns for common needs:
- “I need a Python web service”
- “I need a data pipeline”
- “I need a scheduled job”
Templates, scaffolding, best practices included.
Developer Portal
Single pane of glass:
- Service health
- Deployment history
- Runbooks
- Team ownership
- API documentation
Measuring Success
DORA Metrics
- Deployment frequency: How often teams ship
- Lead time: Commit to production
- MTTR: Recovery from incidents
- Change failure rate: Deploys that cause problems
Developer Satisfaction
Survey questions:
- “I can deploy without waiting for another team”
- “I understand how to operate my service”
- “I can find documentation easily”
Adoption
Track platform usage:
- Services on the platform
- Teams using self-service
- Tickets to platform team (should decrease)
Getting Started
Phase 1: Reduce Toil
Identify repetitive manual work. Automate it first.
Phase 2: Build Self-Service
Start with one thing: database provisioning, or deployment pipelines.
Phase 3: Create Golden Paths
Document best practices. Template them. Make doing the right thing easy.
Phase 4: Build the Portal
Unify the experience. Backstage, internal tools, or custom.
Common Mistakes
Building Without Users
Platforms are products. Talk to your developers. Understand their pain.
Over-Engineering
Start simple. Add complexity when needed.
Forcing Adoption
Make the platform better than the alternative. Developers will come.
Ignoring Escape Hatches
Sometimes teams need to go off-platform. Allow it, just make it harder than staying on-platform.
Team Structure
Typical platform team:
- Platform Engineers: Build the infrastructure
- Developer Advocates: Gather feedback, improve DX
- Technical Writers: Documentation
- Product Manager: Roadmap, prioritization
Treat platform like a product team.
Final Thoughts
Platform Engineering is the maturation of DevOps. Instead of every team solving infrastructure problems, centralize that expertise. Build products developers love.
The goal isn’t to control developers—it’s to enable them.
Build paved roads. Let developers drive fast.