What I have learned researching how agile team composition decisions are made
Approximately five years ago the company I work for started to adopt agile software development practices. As an engineering manager and leader, multiple times I was involved in making decisions about which agile teams were needed and who was part of each team. Some times these decisions were hard. Moreover, even if done with good intentions and justifications, often people were not enthusiastic or convinced with the changes in the organisation.
I wanted to turn around this. I wanted to reduce the negative impact that an important volume of people were expressing as a result of changes in the organisation. After all, the majority of us do want our colleagues to be content at work. Hence, I started reading and learning about how team composition decisions are made in organisations doing agile software development. Early on this journey I came accross the book “Team Topologies”. It is a fantastic book and the authors have created great material and collaterals, including trainings, and participated multiple webinars available online. Reading this book for me was a professional life changer, literally, as it inspired me to embark in an MSc in Organizational Psychology at Birkbeck University, to answer the question: How are team composition-related decisions made in organizations using agile software development practice at large scale?
In this article I provide a summary of the findings and recommendations that resulted from that research.
Research Findings
The success of agile practices largely depends on the composition of agile teams, which is a complex decision-making process. To understand how agile team composition decisions are made in real-world situations, I conducted interviews with eleven volunteers from different organizations who had worked in large scale agile set ups between 5 and 22 years. These are the conclusions I draw from those interviews:
- Psychological factors play a crucial role in deciding which agile teams are needed and who is in each team. Rather than following formal procedures, decision-makers take an informal and interactive approach, adapting the process and decision based on the needs, feelings, values, goals, and beliefs of those involved in and impacted by the decision. Those involved often adapt the process and decision based on their understanding of what everyone needs and wants. When they had a previous relationship with individuals who would be impacted by the decision, and/or anticipated resistance or negative reactions to agile team composition changes, those involved in agile team composition decision-making often adapted the process and the decision itself to their understanding of the needs, feelings and goals of those impacted. Making small changes and involving team members in the process helps gain acceptance. Having product owners and senior developers involved early on can also help make better decisions by identifying possible weaknesses and refining the team composition.
- Mix of team-level and individual-level attributes: When making decisions related to specific people, personal attributes, technical and soft skills, team size, and roles are considered. Contrary to some literature, decision-makers often value soft skills more than technical skills when choosing agile team members.
- The decision-making process is made through a series of decision points, and managers and leaders are usually the ones who make the decisions about which teams are needed and who should be on each team. They know that team composition needs to be continuously refined based on feedback loops, particularly those enabled by collaborative agile practices, and changing business and personal goals.
- Values & principles from the Agile Manifesto and guidance provided by large-scale agile frameworks play a limited role in composing agile teams. All participants embody the first agile value: “Individuals and interactions over processes and tools”. They aim to build teams around motivated individuals, and regularly reflect and adjust agile team composition to boost team effectiveness. Nonetheless, contrary to the agile principle changing requirements late in a project are not always welcomed, but a source of struggle. Equally, face-to-face communication are not preferred, and location is not always considered when forming teams. Finally, large-scale agile frameworks are applied loosely, and guidance related to organizational size and roles is not always considered.
- Informed by the experience of those involved in the process and other knowledge sources such as advisors, SAFE® documentation, Agile Manifesto, books, research outcomes, and forums, decision-makers seek team compositions that allow for autonomy and self-organization.
- The COVID-19 pandemic had no or small impact on how agile team composition decisions were made. However, post-pandemic, location might have become important again, as some team members were co-located due to differences in organizational policies, which lead to the perception of difference in performance between those team members who were co-located and those home-based.
In conclusion, agile team composition decision-making is an iterative, interactive, informal, and people-centric process that involves decision-makers aiming for good enough decisions while being mindful of the temporary nature of those decisions. Change is constant, and decision-makers are driven by the need to act, adapting agile team composition frequently. Compromises are common as decision-makers aim to satisfy conflicting goals.
Recommendations
A common theme in the experiences described by the participants in the research is that agile team composition decisions are made constantly. The following recommendation seek to help organisations and employees of the organisations to be better equipped to be take part in the decision making process, as well as researchers who seek to continue research of this topic.
For organizations that use agile software development practices at large scale:
· Develop interventions that focus on educating employees on dynamic agile team composition change processes, both at an individual and team level. This will be particularly useful during agile transformation and adoption programs, employee onboarding, and when people become decision makers.
· Create support mechanisms for managers and leaders to facilitate employee career development conversations and managing change.
· Implement group decision making practices that reduce group biases, such as false consensus, group thinking, and group escalation of commitment.
· Encourage employees to learn from previous experiences by consulting existing literature about software development team composition and through mentoring.
· Create communities of practice where agile team composition decision-making processes can be discussed and learning experiences shared.
· Encourage informal and interactive decision-making: Instead of following formal procedures, encourage a more informal and interactive approach when forming agile teams. This helps ensure that everyone’s needs and wants are considered and helps gain acceptance for the decision.
· Involve team members in the process: Making small changes and involving team members in the process helps gain acceptance and can lead to better decisions. Having product owners and senior developers involved early on can also help make better decisions by identifying possible weaknesses and refining the team composition.
· Use feedback loops to refine team composition: Agile team composition decisions are made through a series of decision points and should be continuously refined based on feedback loops, particularly those enabled by collaborative agile practices (retrospectives, daily stand ups, charts), and changing business and personal goals.
For individuals who are agile team members or involved in team composition decisions:
· Develop skills in group decision making that reduce group biases. Additionally, to increase your chances of being chosen for an agile team, focus on developing your soft skills such as collaboration, problem solving, and learning attitude.
· Approach agile team composition decision-making as a continuous learning process, rather than a one-time event. By being open to ongoing learning and growth, individuals and organizations can stay current with best practices, adapt to changing circumstances, and continually improve their decision-making processes. Seek out opportunities to learn about dynamic agile team composition change processes, whether through formal training, mentoring, participating in communities of practice, or reading documentation, books (“Team Topologies” and “Dynamic reteaming” are two great starting points), research outcomes (Google Scholar is a great starting point), and forums.
· Communicate your needs and wants: If you are going to be affected by an agile team composition decision, make sure to communicate your needs and wants to those involved in the decision-making process. You can also put yourself forward to be involved in the process.
· Be open to change: Change is constant in agile team composition decision-making, so be open to new team compositions and be willing to adapt.
· Be willing to provide feedback: Agile team composition decisions should be continuously refined based on feedback loops, so be willing to provide feedback on the team composition and suggest changes if needed.
· Embrace self-organization: Agile teams are often built around autonomy and self-organization, so embrace this approach and work to become a self-organizing team member.
For researchers of agile team composition decision making:
· Conduct further research to develop practical guidance specific to different types of agile team composition decisions, such as single team formation, multiple team formation, reconfiguration of members into new teams, team staffing, and adjourning teams. This can help identify areas of deliberate practices and sources of feedback.
· Conduct longitudinal studies to investigate how decisions about team composition are made in organizations using large-scale agile software development frameworks.
By implementing these recommendations, organizations can improve their agility by creating teams that are more effective and resilient in responding to changing requirements and external factors. Individual professionals can benefit by gaining more knowledge and skills in agile team composition decision-making, while researchers can help advance the understanding of this important aspect of agile software development.