Platform Teams

Platform teams are the building blocks that product teams use to ship business-facing functionality. Products are built on top of platforms, which platforms enable product teams to move faster. Platform teams are key in scaling up high-growth engineering organizations. Platforms teams share the following characteristics:

  • Focused on a technical mission. Platforms are focused on technical goals like scaling a key area, achieving performance or availability goals, or building an easy to extend and maintain architecture that serves multiple teams and areas.
  • Customers are usually internal engineering teams. Most customers for a platform team are engineers of other product teams or, in rare cases, people from the business side also using the platform.
  • Consumed by multiple verticals. Each platform typically has multiple customers - products or other platforms.

Below are articles I've written on platform teams. They both share my own perspective on these teams, and also include interviews with experienced engineering leaders and engineers who have built platform teams. This article is an ever-updating collection issues touching on platform teams.

Interesting thoughts on platform teams

Quotes from the above articles that you might find particularly interesting.

If you don’t create platform teams in time, you fail to stay ahead of the growth curve. When you don’t create any platform teams, the incentive for the product engineering teams is to build the next product feature. Companies are there to solve problems for their customers, so this is what product engineering teams focus deeply on. For example, on the Billing team, the product managers will be thinking deeply about how they can launch the next bill payment feature that improves the customer’s experience.

- from 🔒 Platform Teams with Ganesh Srinivasan, Chief Product & Engineering Officer at Confluent.

When to spin off the first mobile platform team is always a challenge. Large mobile teams clearly need one - or more - of these teams. But what about teams that are still small - say, at 15 engineers?

Starting a platform team too late can mean lots of redundancy in the code, poor abstractions, and little reusability between identical functionality. Were a platform team in place earlier, this team would have been the natural owner of several - shared - features and would have also taken ownership of the app-wide architecture.

- from Mobile Platform Teams

Uber decided to restructure to platform and program teams ahead of having the sufficient number of people in place for all “landing parties” to be complete. What this meant was several teams were still operating as skeleton crews and were expected to catch up with hiring.

- from 🔒  The Platform and Program Split at Uber.

Put the ease of use of your platform first. Many platform teams don’t consider this as one of their main priorities, but they should. Your API, the interfaces, and the ability to self-service all fall into here. Ease of use is very important in scaling your platform. Your goals should be to build a platform that other engineers want to use, and feel good about using. It should not be the other way around, where engineers need to use it, but they don’t like to.

- from 🔒 Platform Teams with Ganesh Srinivasan, Chief Product & Engineering Officer at Confluent.

Platform teams improve organizational efficiency. They reduce duplication of work and help with standardization of approaches, when standardization is a benefit for the organization. For example, setting up a Backend Security Platform team can help with standardizing security vulnerability checks across the company. They would also help uncover duplicated – and inconsistently implemented – security approaches.

- from 🔒 The Platform and Program Split at Uber.

The idea of setting up a "mobile platform team" will probably come around to you if your area has around 20 or more mobile engineers working on one or more apps. You'd probably be able to identify areas that could make more sense to be owned by a single team. But how do you go about this? Should you champion this cause?

I have set up a mobile platform team at Uber, creating the Payments organization's first mobile platform team

- from Mobile Platform Teams

Featured Pragmatic Engineer Jobs

  1. Senior backend engineer & Senior frontend engineer at Rise Calendar (EU, €80-120K + equity) I'm an investor.
  2. Software engineer at Interact (Remote, $120-200K + equity)
  3. Full stack software engineer at Pallet (New York, Remote, US)
  4. Engineering manager & Software engineer at Orbit (Remote, global)
  5. Senior platfrom engineer at Qualified.com (Remote, US)
  6. Product engineer at incident.io (London, £70-130K + equity) I'm an investor.
  7. Tech lead/Senior fellowship at Commit (Canada): test startups for 3 months at a time!
  8. Founding full-stack engineer & Founding web3 engineer at Launch House (Remote, US)
Browse more senior engineer and engineering leadership roles with great engineering cultures, or add your own on The Pragmatic Engineer Job board.

Gergely Orosz

Writing The Pragmatic Engineer Newsletter and advisor at mobile.dev. Previously at Uber, Microsoft, Skype, Skyscanner.

Amsterdam, Netherlands