Building a Platform Team — Laying the Foundations
Embarking on the journey of constructing a platform team? Discover the essential groundwork required to establish a robust, efficient, and successful team. Uncover the key elements that lay the foundation for a high-performing platform team.
Controlled Experimentation
Whenever they identify promising approaches to any problem, it’s encouraged to try them out through POCs, review results afterwards and make choices accordingly.
Lower barrier to entry
On-boarding a new employee isn’t tremendously hard, but it is high-impact. Done well, it will improve team-work, give employees a sense of belonging, and decrease turnover.
Solve Common Problems
Start by understanding developer pain points and friction areas that cause slow down in development.
- Get this info both qualitatively by gathering feedback and quantitatively via engineering KPIs.
- This combined with an understanding of the future direction of the product can help shape a great roadmap and pick the right battles to fight.
Strong opinions, weakly held
Allow your intuition to guide you to a conclusion, no matter how imperfect
- Then prove yourself wrong
- The ability to have strong opinions while being open to change encourages different points of view, surfaces conflicting opinions that might poke holes into current options, and enables us to learn and iterate faster
Questions are as highly respected as answers
The only way for teams to develop a shared understanding is for them to ask questions.
- This dialogue is critical in order to get a firm understanding of what and how to get things done and to help drive building a better product.
Why?
Our mission
What?
Our goals (focus)
- “What are our key focus areas?”
- List down key goals that help achieve our overarching mission
- These goals help provide much needed focus, that in turn translates to identifying the right avenues to tackle
- Identify the right people to talk to
Optimize iteration speed
The speed at which a company innovates is limited by its iteration speed.
Walmart launched a slew of features over the last couple of years and their sales grew at a phenomenal rate.
With growing pains, software entropy kicked in and product developers had to manage several cross-cutting concerns along with their feature work and timelines.
- To be efficient, there was a need to build common abstractions, interface with other internal platforms, fix common issues and leave no windows broken.
Empathy
We are one team. We should constantly put ourselves in the shoes of other developers.
- Building a diverse team enables us to ask questions from different vantage points, empathize better, and help make the right choices for our developers
- How does this technical decision affect our developers? How can we make this change easier for other teams to adopt?
Conclusion
It’s important to foster the right culture in the team to enable engineers to be happy, take pride in what they do and grow together as a team.
- Platforms and software evolve, and what we build today will most certainly change and become obsolete over time. This is just progress. The things that we ultimately carry forward with us are our learnings, friendships and memories.
Question your choices
Users evolve and code does too. What was a pattern a year back could become an anti-pattern in future.
Build Trust through Accountability
Accountability is holding yourself responsible for what you say you will do
Developer Productivity
Speed up different phases of software delivery for a developer
How?
Our principles (values)
- A key element that guides execution is knowing “How?” “How do we operate?”
Pareto Principle (80/20 Rule)
You tend to get 80% of your impact from 20% of work
Collaborate Openly
The platform is the product, the teams are the users, and the key is to collaborate like an Internal Open Source (i.e., Inner source) Team
- Share your plan with teammates and encourage open feedback through design reviews or other communication channels
Respect humans beyond just code
At the end of the day, we are just a bunch of humans working together churning out a pattern of zeros and ones for the computer to make sense of
- It’s important to see the human side of people, appreciate diverse opinions and respect each other’s differences