top of page
Writer's pictureVivien Újvárosi

Team Building in the Software Development Environment


Team building is a topic often discussed in corporate circles, particularly in the context of fostering employee connections and enhancing the overall work experience. But what does team building truly entail? Is it merely the act of assembling a team, or does it refer to the activities undertaken by a team to enhance its cohesion and experience? |

In this article, I will point out some theories for building a team in the software development environment where the members bring diverse skills, perspectives, and personalities to the table, making it crucial to understand and leverage these differences and strategically utilize them to forge a high-functioning and effective software development team.


// In the complex and ever-evolving world of software development, effective team building is essential for delivering high-quality products and meeting project deadlines.


Meredith Belbin's “Nine Team Roles Model” provides, in this case, a valuable framework for understanding team dynamics and maximizing the potential of each team member.

At Crafting Software, considering the presence of mixed teams with expertise in diverse technologies such as Erlang, Elixir, JavaScript, and QA teams, understanding the roles our colleagues play becomes crucial for the formation of effective software development teams. Meredith Belbin, a British researcher, identified nine distinct team roles, each with its unique characteristics and contributions.


// These roles are:

  • Plant: The creative thinkers of the team, with a focus on idea generation and imaginative natures.

  • Resource-Investigator: The enthusiastic members of the group, often focus on networking and bringing new information and resources.

  • Coordinator: The individual with strong communication skills who sets clear team objectives and is confident about their decisions.

  • Shaper: The dynamic, results-oriented team member who challenges the group to overcome obstacles and achieve goals. They are individuals who thrive in pressure situations and are highly driven.

  • Monitor-Evaluator: The analytical thinker who provides a rational perspective and assesses the team's ideas and options.

  • Team Worker: The supportive and accommodating member who maintains a positive group dynamic.

  • Implementer: The practical, detail-oriented team member who turns concepts and plans into tangible actions.

  • Completer-Finisher: The perfectionist who ensures that the team's work is error-free and meets the highest standards.

  • Specialist: The team member with high levels of expertise in a specific area who provides specialized knowledge and skills.


Now armed with an understanding of these roles, a clearer perspective on team composition emerges. Of course, to create a high-performing software development team, it's important to have a balance of these roles. A diverse team ensures that all aspects of a project, from idea generation to execution, are covered.



// But you may wonder what would be the first step in creating a team.


To answer this question, I will refer to another theory from organizational psychology, that highlights the main stages of a team development process.

One such approach is the Forming, Norming, Storming, and Performing model, developed by Bruce Tuckman, a psychological researcher. Simultaneously, I will point out the importance of the roles mentioned earlier in each stage, to understand why some members engage in different actions when it comes to working in a team.


The Forming stage is the initial phase of team development. During this stage, software development teams come together, often consisting of diverse professionals. They may be excited but unsure of their roles and responsibilities. In this stage, it's essential to set clear expectations and roles for team members. Define the project scope, establish goals, and communicate the vision for the development project. Belbin's team roles can provide valuable insights into the composition of the team in order to check these points. For example, at this stage, you may need the help of some specific roles.


  • The Plants may be the ones who generate innovative ideas for the project, setting the stage for creative problem-solving, while Coordinators can ensure that everyone's strengths are recognized, harmonizing the team's efforts to set clear goals and directions.


In the Norming stage, the team is expected to align and work collaboratively. In the software development environment, it's crucial to set coding standards, best practices, and development processes during this stage. This helps the team align their efforts and create a cohesive working environment. Encourage regular team meetings and open channels for feedback to facilitate collaboration and innovation.

Belbin's roles remain pivotal, as certain roles can further improve the progress of this stage. In this case, you can observe that:


  • Team Workers can promote unity by resolving conflicts and maintaining a positive team dynamic.

  • Completer-Finishers focus on ensuring quality, guaranteeing that the team adheres to best practices and produces error-free code.


The Storming stage is where conflicts arise as team members assert their ideas and opinions. These conflicts can be related to differing opinions, working styles, or the stress of meeting project deadlines. While this stage may be challenging, it is an inevitable part of the team development process.


In a software development environment, it's common for developers to have strong opinions about coding approaches or architectural decisions. However, conflicts should be managed constructively. Team members can facilitate discussions, encourage compromise, and help other team members find common ground. By addressing conflicts and differences early on, the team can move on to the Performing stage more effectively.


It's a crucial point in team development where Belbin's roles can help manage differences:

  • Shapers play a vital role by addressing conflicts head-on, so they may challenge the team to overcome obstacles, and direct the focus toward the project's goals.

  • Monitor-Evaluators are the ones who provide a rational perspective, assessing the team's ideas and options to ensure informed decisions. So be sure that your team has a member occupying this role!


In the Performing stage, teams should deliver high-quality results consistently. To reach the Performing stage, there is a need to provide support and encouragement. Celebrate successes and recognize individual and collective contributions. At this stage, the focus should be on continuous improvement, innovation, and maintaining the positive aspects of the team's dynamics.

Of course, Belbin's roles continue to be valuable:


  • In this stage, Resource Investigators keep the team informed about external resources and opportunities, helping to adapt to industry changes and maintain competitiveness.

  • Specialists and Implementers contribute with their high levels of expertise in specific areas and their practical, detail-oriented approach to turn concepts and plans into tangible actions, providing specialized knowledge and ensuring the project moves forward efficiently.



>>> Conclusion


You might question whether all roles are vital for a team's effectiveness.

Well, the answer is no, yet team diversity holds significant importance.


However, it's essential to emphasize a significant aspect. It's plausible for one individual to manage two roles within the same team: for instance, establishing well-defined team goals in the first stage and simultaneously steering the team towards project goals, addressing any conflicts during the Norming stage. In this scenario, one person fulfilled the roles of both Coordinator and Shaper. A critical factor lies in the individual's ability to discern which role to prioritize and when, ensuring one role doesn't overshadow the other when it takes the spotlight.


The integration of Tuckman's Forming, Norming, Storming, and Performing model with Belbin's Nine Team Roles model offers a comprehensive approach to team building in the software development environment. By recognizing and leveraging the unique strengths and attributes of each team member at every stage of Tuckman's model, software development teams can enhance collaboration, creativity, problem-solving, and efficiency. This holistic approach fosters harmonious and productive teams, essential for achieving excellence in today's fast-paced software development industry.



P.S. If you are curious about the role you play in your team, I advise you to take the Belbin Team Roles Self-perception Questionnaire or the Self-Perception Inventory. Make sure to distribute it to your team members and encourage them to complete it in order to discover their roles!


// References


Belbin, R. M., & Brown, V. (2022). Team roles at work. Routledge.

Tuckman, B.W. Developmental sequence in small groups. Psychological Bulletin, 1965, 63(6), 384-399.



// Vivien Újvárosi // NOVEMBER 17 2023

Comments


bottom of page