Every transformational leader would prefer a team that is engaged, motivated, and contribute directly towards achieving the organizational goals. Here are the 10 key factors which really worked for me in building high performing agile teams.
1. Communicate the big picture
A team works better when it knows how the assigned task is aligned with the organizational strategy and when it contributes towards the external business goals. Picking up user stories from the backlog without analyzing how it adds to the organization’s vision and goals is not effective. It creates neither a culture of creativity nor an environment which promotes challenging things constructively, what is being done and how it’s being done.
Successful organizations invest adequate time in communicating a common understanding of overall business objective throughout the organization. The departments and teams are given the freedom to define their goals in alignment with the organization’s objectives. When the team defines goals for itself, there is a greater connect and hence a far greater chance of your team meeting those goals.
2. Constant team composition
Very often, teams are formed by grouping available people towards a project objective. When the project completes, the team members are released for other business initiatives. In a new team, it takes time to establish positive team dynamics like, Forming, Storming, Norming, and Performing; and for individuals in the team to understand strength of the other team members and their different ways of working. It also takes time to understand how an individual’s skills complement the skills of another in the team. With time, the team bonding, dynamics, and the ways of working get better. People are more productive when they enjoy working with their peers. If a team composition changes, the teams start all over again.
If your environment allows it, you may want to try the concept of allowing people to choose/form their own agile teams: “self-organizing teams.” This is a significant, but one-time disruption which gives the team members an opportunity to choose different team members they want to work with.
3. Bring work to the team
Keeping teams idle is a big demotivator. Once the team structure is finalized, it is important to ensure that there is a regular flow of prioritized work for the team. Instead of the team looking for work, the team should be assigned work before any situation like this arises. Avoid unnecessary pressure or constant change in priorities during the sprint as much as possible.
4. Smaller the better
An ideal team size is 5 to 7 people. Small teams are nimbler, and they can communicate & collaborate better. If you have 10 or more people in your team, consider dividing the team into smaller groups.
5. Identify meaningful metrics for the team
Often, we see too many or too few metrics for the team. Sometimes, we enforce metrics which do not align with the value expected from the team. Despite focusing on measuring the metrics int he first-go, the initial efforts should be around defining the metrics that help in measuring and boosting the overall performance. The metrics must be meaningful to the team and crafted in a way that the top management can consume it to measure real progress across the organization. Use information radiators in the team area to amplify these metrices.
Many teams generate large number of metrics without making any active use of these. Instead of having dozens of metrics, establish a few “relevant metrics” around factors such as business value, quality, lead time, etc. The team should be able to understand and consume the metrics on a regular basis and learn from them.
6. Recognize team effort
A high-performing team makes sure that each team member should perform his or her best. This culture can be nurtured by measuring the performance of a team and rewarding the best performing team. The measurement criteria should include parameters on business value, quality, and timeliness. Some organizations go so far as to restructure their incentives to focus on team performance over individual performance, which fosters a culture of team over self.
7. Empower the team to take decisions
The team should be empowered enough to take their own decisions. They should be presented with the work to be done and allowed to find their own solutions and ways of working. The scrum master or product owner should not overly control or direct the activities of the team. Read our recent perspective on common product onwer anti-patterns for more clarity.
8. Establish strong engineering practices
For software teams, it’s important to build the cadence of continuous integration and continuous deployment. Automated code reviews, automated tests, automated builds, and deployments help in a big way in discovering problems early and increasing confidence of the team and the business.
9. Make time for fun and innovation
Teams should factor 20-30% of the time for having fun and for innovation. This not only helps keep the morale high, but also ensure people have a fresh mind and that they are able to contribute in innovating for the organization.
Getting the team to work together on one problem at a time helps them understand each other better. The individuals learn the unique strengths in other members and can collaborate better when stuck with specific problems.