Teamwork
Nourish it with: Autonomy, Mastery and Purpose
Growing up on a soccer field has taught me so much. From the importance of teamwork to the value of dedication, working hard and smart, my time spent on the pitch has been invaluable. It's no surprise, then, that I've been able to draw some parallels between my soccer experience and the world of system development.
Teamwork is essential in both fields. In soccer, a team is made up of individuals with different skills and roles, but they all work together as one unit to achieve their collective goal. The same should apply for System development, this also require different skills and collaboration. It involves a team with skills of business, architecture, development, design, and test working together to create a successful product and outcome.
The most satisfying times in my career, both on the soccer pitch and system development involve working as a team. A group of people working towards a common goal. Where each team member work together to reach a successful outcome, and each team member have understood their role and are willing to contribute and help and cover up outside of their basic position; in order for the team to succeed.
One similarity between soccer and system development is the need for strategy and guiding principles. Soccer teams must plan out their strategies in order to have the greatest chance of success. System development teams must also plan out their product strategy in order to ensure that it meets customer needs and is successful in the market. Both must have a game plan how to get there.
Another similarity between teams in sports and system development is that both require strong communication skills. In sports, team members must be able to communicate their ideas and needs clearly to their teammates, and in system development, team members must be able to communicate their ideas and needs to the rest of the team. Without clear communication, a team is unlikely to be successful.
Communication is also the key to develop trust. Together we need to create an environment and culture where team members feel comfortable expressing their opinions and ideas. Encourage them to be open and honest with each other, and reward those who are willing to take risks.
Another way to help build trust is to provide clear direction and expectations. Make sure that everyone is aware of the vision, goals and objectives of the product, as well as their individual roles and responsibilities. Clear expectations will help to ensure that everyone is on the same page and working towards the same end goal. Thats as importent both in sports teams and development.
I believe that each team and individual develops and grows if they gain autonomy, mastery and pupose. The three concepts of autonomy, mastery and purpose have been around for many years, but have recently seen a resurgence in popularity due to the work of psychologists such as Daniel Pink and the growing body of research around the topics. In my oppinion this concepts apply everywhere.
Autonomy is the sense of being in control of your own life and decisions. It means having the freedom and independence to make choices that are meaningful and to direct your own life, actions on the field, product or solution. People with autonomy have a sense of ownership over their own lives and they feel empowered.
Mastery is the feeling of being competent and capable in a particular area or skill. It involves pushing oneself to improve and become more proficient in an area of expertise. Mastery requires focus, dedication and hard work, but it can also bring a sense of satisfaction and accomplishment.
Purpose is the sense of having a meaningful purpose in life, the team, at work. It is the feeling of being part of something bigger than oneself and having a clear goal to strive for. When people feel that they have a purpose and direction, they are more likely to be motivated and find a sense of fulfillment.
Autonomy, mastery and purpose are as important in both our personal lives and in the workplace. When people have autonomy, they are more likely to feel empowered to make decisions and take action. With mastery, they can develop their skills and become more competent in their work. And with purpose, they have an overarching goal that they can strive towards.
Another concept "Bounded context" is maby more clear on the soccer pitch, where the white lines shape the context of the game. Helping development teams shape their context is crutial for success. Organizing around business domains is an effective way to achieve autonomy in a company or organization. This practice allows teams to focus on their own domain of expertise and make decisions related to it without relying on a centralized authority. By decentralizing decision-making, organizations can reduce bureaucracy and improve efficiency.
When organizing around business domains, it is important to foster a culture of autonomy, but not one of collaboration. Autonomy encourages teams to be self-directed and work independently, while collaboration implies that teams need to work together and coordinate their efforts between contexts. With that said of-course we need to collaborate but we should not strive for collaboration and dependencies. We should always take Conway's law into account when organizing it will affect the end result of the solution.
Conway's Law is an axiom in software engineering which states that "any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure." This law was proposed by computer scientist Melvin Conway in 1967 and has been used to explain the challenges of software development. The idea is that when teams are structured in a certain way, their output will be shaped by the way that the team works together.
Despite their similarities, there are differences between sports and system development. In sports, success is usually determined by the outcome of a single game or event. In system development, however, success is often determined by the long-term impact of a product or technology.
Overall, my experience playing sports has been invaluable to my success in system development. It has taught me the importance of teamwork, collaboration, and problem-solving, all of which are essential skills for success in the field. The two fields have a lot in common, and there is a lot to be learned from each. Both require teamwork and strategy, and both require dedication and perseverance.
But the most important lesson I've learned from both soccer and system development is to never give up. Whether it's a match or a product launch, there are always challenges that must be overcome. The key is to remain focused and determined, and to never give up on your goals.
Try to apply and build teams with the size of two pizzas, organize them around a bounded context, business domain. Give them autonomy, mastery and purpose. Communicate your expectations. Coach them and give them guidance and your trust, and let them create the magic on the pitch.
- "You build it, you run it", Wernal Vogels, Amazon CTO
> “Great teams are not made up of many well-rounded players. Great teams are made up of a variety of players, each having their own strengths.” — Pelé