"The purpose of a platform team is to enable stream-aligned teams to deliver work with substantial autonomy. The stream-aligned team maintains full ownership of building, running, and fixing their application in production. The platform team provides internal services to reduce the cognitive load that would be required from stream-aligned teams to develop these underlying services."
The last year I have been leading the Platform Team in a startup during the scale phase. First at Nextail and currently at Clarity.ai. Although it is the first time I focus exclusively on that team, the truth is that throughout my career, I have always got very involved in any initiative or organization focused on improving internal tools or provide a platform for the rest of the engineering team.
I have always liked these teams, for the transversal impact they have on the whole product organization and the capacity they have to enable the DevOps culture.
But I've always seen that they usually focus too much on technology and not so much in the customer, our colleagues. Happily, it seems that these teams are starting to be treated as product teams and are beginning to use modern product management techniques.
There are still not many resources dedicated to how to treat the Platform as an internal product. So I have decided to compile in this post the most interesting resources I have found about it.
Interesting presentations
- How Stripe Invests in Technical Infrastructure
- Platforms at Twilio: Unlocking Developer Effectiveness
- Kubernetes is Not Your Platform, It's Just the Foundation
- Minimum Viable Product for Platforms
- Monoliths vs Microservices is Missing the Point - Start with Team Cognitive Load
- Construyendo infrastructuras evolutivas (Spanish)
- Una aproximaciĆ³n a la infraestructura evolutiva (Spanish)
- Internal-Facing Products Don't Have to Be Bad (slides)- ProductTank
- WTF Is Platform as a Product?
- Production excellence:
Projects
Articles and blog posts
- Product for Internal Platforms
- Camille Fournier on Effectively Managing Internal Platform Teams
- What I Talk About When I Talk About Platforms
- Technology radar: Applying product management to internal platforms
- Advocating for a Product Mindset within Platform Teams and How We Do It at HelloTech (Part 1)
- How to build a PaaS for 1500 engineers
- Why Do Organizations Need a Platform Team?
- The Engineering Manager’s Dilemma
- Building a Delivery Ecosystem: Part 1
- Building a Platform Team — Laying the Foundations
- Platform Engineering
- How to build a platform team now! the secrets to successful engineering
- The Rise of Platform Engineering
- How We Improved Developer Productivity for Our DevOps Teams
- How We Use Golden Paths to Solve Fragmentation in Our Software Ecosystem
- Mobile Platform Teams
- Personas
- Personas – A Simple Introduction
- Gitlab Personas (real example)
- Production excellence:
Books
Other resources
- Training: TT08 - Principles and Practices for Modern Platforms
- DevOps concepts and learning path
- https://github.com/teamtopologies (Team-API-template, Thin Platform template, Team Dependencies Tracking, ...)
- Codurance Talks 25 - The challenges and opportunities of Platform engineering and DevOps (interesting podcast)
I'd love to share resources with anyone who's interested in the subject. Any suggestions/resources/ideas are welcome.
Updates:
- 2021-02-07 Added few resources thanks to @matthewpskelton and further research
- 2020-12-11 Added few resources thanks to @connonm and @jpgcc_
- 2020-08-17 Initial updates thanks to @manupaisable