Platforms are created within high-growth engineering departments to provide adequate infrastructure and deployment pipelines, and to ensure that all internal services are running smoothly so the development team can effectively build, deploy, and manage their teams with a high degree of effectiveness. If you have different people in your engineering team working on different cloud integrations, it’s time for you to consider a platform team so you can get everyone on the same page. There are several skills and tools that can set you up to build the most effective engineering platform teams; we’ll cover them in this article!
- What are platform teams?
- Differences between platform teams and product teams
- How to build a platform team
- Skills for platform engineers
What are platform teams?
Platform teams typically focus on the software infrastructure component of an engineering team. Where infrastructure engineering focuses on physical infrastructure, platform teams focus on internal infrastructure. Because many organizations are now using cloud services, there is now a need for platform teams to come together and make the different cloud offerings within the business operate seamlessly. Platform engineering teams apply software engineering principles to speed up the company’s software delivery. As such, they make sure that application development teams are productive during the entirety of the software delivery lifecycle.
Great meetings are just the start
Level up your meeting habits to boost engagement and productivity with a collaborative meeting agenda. Try a tool like Fellow!
Differences between platform teams and product teams
There are a few distinct differences between platform teams and product teams. Where product teams typically work with external customers, platform teams have internal customers (typically employees of the organization). Working with internal customers provides the platform team with a unique opportunity to truly understand the needs of management and of employees across the company. Product teams need to make an additional effort to translate business goals and align them with external users, which can be time consuming and more challenging if the customers don’t have an engineering background.
Where product teams may work on building prototypes and quickly turning a spec into a functional demo, a platform team tends to have longer projects with a focus on operations. Because platforms are made to be long-running systems, there is a huge focus on stability, efficiency, performance, and uptime. More than completing a demo, the platform team needs to contemplate the future, whether this means modernizing old systems, considering how a system may evolve, or how a future transition could be best managed.
How to build a platform team
- Get clear behind the why
- Have standards as well as autonomy
- Have a product mindset
- Increase iteration speed
- Understand pain points
- Identify your differentiator
- Empower the team
- Give them space to create
1Get clear behind the why
To build an effective platform team, you need to have a clearly defined purpose and mission. Your why needs to be established so it’s clear that a need is being filled and that a product team whose purpose is to serve the application developers (customers) within the business is needed. Having a clear why will make it clear to the platform team and other teams that this work is not an extension of site reliability engineering (SRE) or of operations teams. First, establish what your mission is as a team, then you can choose to get more specific on a per-project basis. Getting clear behind why you actually need a platform team will help you obtain buy-in from engineers and from leadership.
2Have standards as well as autonomy
Standards are important to set with the team so your team members have the autonomy to work as effectively as possible, both independently and within the team. Platform teams depend on these standards to have a meaningful impact within the organization. Introduce a centralized set of standards to the team, then the standards can be discussed with other teams in the organization. You need everyone to be on board for an autonomous workforce to flourish, so be open to negotiating and communicating your standards adequately before you come to an agreement. It’s important that the platform team isn’t spread too thin so they can be effective in their work.
3Have a product mindset
Any internal platform team needs to adopt a product mindset, meaning a focus on what will provide substantial value to employees and management as well as a focus on the feedback they receive. Sometimes in tech, employees can get sidetracked working on things that are “fun” or “cool,” rather than really thinking about what will provide the biggest benefit to the business. If something goes wrong in your teams, it’s likely that all other teams in the organization will also suffer the consequences, which is why it’s essential that a product mindset is adopted from the get-go. Several building blocks can make this possible—for example, iterating this goal on the internal dev platform.
4Increase iteration speed
To build an effective platform team, you want to make testing as fast and as painless as possible so that ultimately, you’re increasing the iteration speed. If you can increase your iteration speed, your app developers can ship more products and features more consistently to customers. What’s better is that during this process, developers also gain confidence that things have been done properly and aren’t at risk of breaking. To do this, your internal platform team needs to focus on optimizing each and every step of the software delivery process, including making local development and testing as fast and problem-free as possible, simplifying the way developers interact with their infrastructure, and creating a lower barrier to entry by building tools and documents that make it possible for engineers to onboard more quickly.
5Understand pain points
A good team understands common problems and works to solve those for the company together. Understanding pain points is essential for platform teams because it’s likely that similar issues will come up over and again. Taking time to note problems that surface and cause delays in development is crucial to being effective. Gaining a good understanding of any pain points can be done through the feedback from developers as well as more quantitatively through the engineering KPIs that you and your team have established. This ability to problem solve and learn from previous issues will strengthen the platform team’s ability to shape the future direction of the product.
6Identify your differentiator
Each platform team needs to focus on the needs of the company and avoid building in-house alternatives to tools that can be easily bought. Rather than focusing your energy on generic needs that can be met using pre-existing products, think about what your differentiator is within the industry. Think about the specific needs of your team and of your organization instead of competing with other organizations that may have double your capacity and act as an unfair and unsuitable comparison. Your team’s value comes from its unique offerings, which is why it’s worth hosting regular brainstorming sessions with your team to truly optimize your talent.
7Empower the team
You want and need your platform team to feel empowered, which is why it’s important to place a focus on education, training, and development, all of which are sourced from your platform team and disseminated to the rest of the organization. We recommend running regular one-on-one meetings to check in with your team members, create a psychologically safe space, and ensure that your team has everything they need to succeed. You can also empower your team by sharing knowledge, giving recognition, and clearly defining the best practices that will be used to create strong alignment.
8Give them space to create
Make sure that you’re giving your platform team adequate space to create. Having the right tools and resources in place that can both validate and identify common issues (like bugs or code smells) will enable your team to be more productive, autonomous, and effective. It’s a great idea to organize internal hackathons so your platform team can try out new ideas and compare with their colleagues. Many hackathon ideas actually make it into production, which is why this is a great way of continuing to innovate and expand.
Skills for platform engineers
- Interest and knowledge of the interface between the software and the machine
- Data storage systems
- SQL systems
- Strong communication
- Ability to adapt
- Desire to keep learning
Platform teams are essential for scaling up high-growth engineering companies. Because this type of team acts as a major building block for product teams to ship business-facing functionality, their role is unique and crucial to the rest of the organization’s success. If you’ve been thinking of building a platform team, ensure that you adequately understand the difference between platform teams and product teams. Create a clear rationale for why a platform team is necessary for you, build strong standards for platforms, develop a product mindset, and increase your iteration speed as much as you can. From here, work to understand recurring pain points, identify what makes your team different from other platform teams, and focus on empowering your team by providing them with space to create and innovate.