Platform Teams: How to Do Things Right

Platform Teams: How to Do Things Right

11 May 2024

Joachim De Groot

Key takeways

  • Platform teams are not an end goal, but a helpful step towards DevOps, especially for organisations with multiple teams and complex technologies.
  • The platform team’s job is to listen to the developers and tailor the platform to their needs, treating the platform as a product and the developers as its customers.
  • It is better to start small and iterate, focusing on the most urgent pain points and delivering quick wins, while keeping pace and avoiding stagnation.
  • The team should be diverse in skills, perspectives, and backgrounds, and you should avoid relying on a single person to handle the platform.
  • Success should be measured using clear and relevant metrics, such as those from Google’s DevOps Research and Assessment (DORA) team.
  • Cloud providers offer building blocks, but customisation and configuration are still required for certain aspects.

Platform teams are often talked about in the same breath as DevOps, but they can also be a source of confusion and frustration. How do you create a platform team that enables and empowers the development teams, rather than constrains and controls them? How do you balance the trade-offs between standardisation and customisation, autonomy and alignment, stability, and innovation? How do you demonstrate the value of a platform team to the organisation and the stakeholders?

In this blog, we will explore some of the best practices and common pitfalls of platform teams in a DevOps context. To get some insights from the field, we sat down with Kilian Niemegeerts, our managing partner, and Joachim De Groot, one of our DevOps engineers. Let’s dive in!

What is a platform team?

We’ve already talked a lot about platform teams in previous blogs, so we won’t go into detail about what they are here. In short, a platform team is a specialised group of engineers that provides a common set of services, tools, and standards for the development teams, typically in larger organisations and enterprises.

Their goal is to reduce duplicate efforts, improve code quality and security, and accelerate delivery by letting the development teams focus on what they do best.

Sounds great, but creating and maintaining a platform team is easier said than done. In the next section, we will share some practical tips and lessons learned from our experience with platform teams.

Best practices for setting up a platform team

Setting up and running a platform team will depend on the specific context of your organisation. There is no fixed formula or framework to follow, but we offer some general guidelines and common pitfalls below.

A launchpad, not a moonshot

As Kilian explains, many of our customers think that platform teams are the ultimate goal of DevOps.

“For many organisations, platform teams are something that you reach only after you have perfected the basics. This is wrong. Platform teams are actually a helpful step towards DevOps, especially for organisations with multiple teams and complex technologies.”

With a platform team, you can already start using shared tools and practices, eliminate friction and bottlenecks, and encourage collaboration across teams and disciplines. Platform teams are not an end, but a significant step in your DevOps journey.

Platforms are products, developers are their customers 

From feedback meetings to writing informative blogs and hosting knowledge sharing events, the platform team’s job is to listen to the developers and tailor the platform to their needs.

As a DevOps engineer who has worked in several platform teams, Joachim points out that getting direct feedback is one of the most important things to consider.

“The biggest pitfall is to see the platform as an imposed business structure. Tailoring the platform to the developers' needs is a two-way process, and has a lot in common with marketing a software product.”

Start small, but keep pace

Another common mistake that platform teams make is trying to deliver too much at once. Instead of launching a fully featured platform that might not meet the developers’ expectations or solve their problems, it is better to start small and iterate.

By focusing on the most urgent pain points and delivering quick wins, you can build trust with the developers and set up those important feedback loops. However, Joachim explain that starting small does not mean staying small.

“At one of my projects, we made the mistake of talking about the platform team as an optional pilot project. Two and a half years later, we still have a team working on the first version due to time constraints. Make sure to keep everyone on the same track to avoid headaches later on.”

Assemble the right team for the job

The composition of your team will depend on the specific needs and goals of your organisation, but you should aim for diversity in skills, perspectives, and backgrounds. Joachim suggests having at least someone with infrastructure expertise and someone with software development experience, as these are essential components of any platform.

Kilian also warns against relying on a single person to handle the platform, as this can create bottlenecks, dependencies, and burnout. Just think about what would happen if that person were unable to work for whatever reason. Instead, we recommend forming a cross-functional team that can collaborate effectively and share ownership of the platform.

Measure your success

Building and maintaining a data platform is not enough. You also need to track its impact and value for your organisation. To do that, you need to define clear and relevant metrics that can help you assess how well your platform is performing, identify areas for improvement, and communicate your achievements to stakeholders.

Joachim recommends using the metrics from Google’s DevOps Research and Assessment (DORA) team as a starting point. Other key metrics are time to detect a failure, time to market, and data usage.

Of course, you can also define your own custom metrics that suit your specific context and goals. The important thing is to establish a culture of measurement and feedback.

Can you use cloud providers as your platform team?

Relying on the cloud providers to build your data platform for you is not realistic. Cloud providers offer a lot of building blocks, but they don’t know the specific needs and challenges of your organisation.

Kilian compares it to being a car manufacturer: even if a supplier gives you all the parts, but it still takes an expert to assemble them into a functioning vehicle.

Joachim observes that the cloud landscape is changing. AWS used to offer more barebones services, but now it is starting to provide more pre-made integrations, following increased demand from customers.

However, he cautions that there are still many aspects of your data platform that require your own customisation and configuration, such as queueing systems, connections via APIs, data quality checks, and so on.

If you ask us, it’s unlikely that the cloud providers will be able to set up everything for you via some sort of questionnaire any time soon.

Conclusion

In short, creating and sustaining a successful platform team takes careful planning and consistent effort. You’ll have to see platform teams as a first step rather than an end point, pay attention to developers’ feedback, start small but keep the pace, form diverse teams, and use relevant metrics to measure progress.

Cloud providers can provide excellent building blocks with some basic integrations, but you’ll still need an expert to make everything work. That’s where we can help. Our DevOps experts will gladly assist with setting up your platform from scratch, optimising your existing one, or provide you with ongoing support and guidance.

Contact us today to discuss how we can turn your ingrained silos into a sustainable platform!

Related posts
No Comments

Sorry, the comment form is closed at this time.