Infrastructure as Product
Treat internal infrastructure as a product with users, roadmaps, and SLOs. Covers product thinking for platform teams, developer experience metrics, adoption tracking, feedback loops, and the organizational model that makes platform engineering sustainable.
Most platform teams build infrastructure and assume developers will use it. Product-minded platform teams treat developers as customers, measure adoption, gather feedback, and iterate. The difference between a platform that gets adopted and one that gets worked around is product management.
Platform as Product Mindset
Traditional infrastructure team:
"We built it. Use it."
Success = infrastructure is up
Failure = developers work around it
Platform as product:
"We built what developers need, and they love using it"
Success = developer adoption + satisfaction
Failure = developers build their own solutions
Developer Experience Metrics
platform_metrics:
adoption:
- onboarding_time: "Time from request to first deployment"
target: "< 30 minutes"
- active_users: "Teams using the platform weekly"
target: "90%+ of engineering teams"
- golden_path_adoption: "% of services following golden path"
target: "> 80%"
satisfaction:
- developer_nps: "Net Promoter Score from quarterly survey"
target: "> 40"
- support_ticket_volume: "Questions/issues per week"
target: "Decreasing quarter over quarter"
- time_to_resolution: "Support ticket resolution time"
target: "< 4 hours"
efficiency:
- deployment_frequency: "How often teams deploy"
target: "Multiple times per day"
- lead_time_for_changes: "Commit to production time"
target: "< 1 hour"
- self_service_rate: "% of requests automated"
target: "> 90%"
Product Roadmap for Platform
Q1: Foundation
- Self-service environment creation (Terraform)
- CI/CD golden path setup
- Developer documentation portal
Q2: Developer Experience
- One-click service creation from template
- Integrated logging and monitoring
- Slack bot for common operations
Q3: Golden Paths
- Production-ready service templates (3 languages)
- Database provisioning self-service
- Automated security scanning in pipeline
Q4: Scale
- Multi-region deployment support
- Cost allocation per team
- Advanced observability (distributed tracing)
Feedback Loops
feedback_channels:
continuous:
- usage_analytics: "Track which features are used (and ignored)"
- support_tickets: "Categorize pain points"
- instrumentation: "Measure time-to-complete for common tasks"
periodic:
- developer_survey: "Quarterly NPS + open questions"
- user_interviews: "Monthly deep-dives with 3-5 teams"
- platform_retrospective: "Bi-weekly team retro on platform"
active:
- office_hours: "Weekly drop-in for questions and feedback"
- embedded_engineers: "Platform engineer joins product team for 1 sprint"
- design_partners: "Early access program for new features"
Anti-Patterns
| Anti-Pattern | Consequence | Fix |
|---|---|---|
| Build without users | Platform nobody uses | Interview developers before building |
| No adoption metrics | Unknown if platform is successful | Track onboarding time, active users |
| Mandated adoption | Resentment, workarounds | Make it so good they choose it |
| No documentation | Developers can’t self-serve | Docs are product features |
| Platform team as gatekeeper | Bottleneck, frustration | Self-service with guardrails |
A platform without users is a waste of engineering. The best platform teams think like product teams: understand your users, measure their success, and iterate relentlessly.