Thursday, January 30, 2014

Distributed teams: making the effort

Distributed teams have to make additional effort, compared to collocated teams, in communication and organization.   That much is clear – distributed teams can perform as good or better than collocated teams, but only if the people rise to the challenge of creating and maintaining continuous and clear communication within the team.

Many teams are distributed only part-time, or consist of several collocated groups, or even almost entirely collocated with an exception of a lone remote member.   When one team member decides to work from home one morning a week – that makes the team a distributed team.  When a person who joins a team is located on another floor, or in a different state – that makes the team a distributed team.

And in a distributed team, in order for the team to gel, everyone must put in the effort to keep the team in sync and communicating – not just the person who is temporarily out of the team room.  This is a tall order, especially since very often the decision to make the team distributed is made inadvertently, by the management rather than the team, and without full consideration of what it will take to run a successful distributed team.

When a team becomes “slightly distributed” for the first time, the pressure to “make it work” is usually on the person who is remote.   But in order to succeed, all of the team members need to pull together and figure out new ways to communicate, to work together, to build bridges and have water cooler-type conversations for the entire team, including the team members not physically present. 

Saturday, January 25, 2014

Distributed teams: making it work

Agile software development places a heavy emphasis on face-to-face communication that requires colocation of the team. Colocation is a requirement for many popular Agile framework implementations, and agile transitions often start with moving all members of the team to the same space.

However, many teams do not have the luxury of working in the same zip code.    Interestingly, Agile frameworks, sans the colocation requirement, are very helpful in getting distributed teams to perform at their best.  Agile emphasis on continuous communication, self-organization, and frequent introspection dovetails perfectly with the distributed team’s organizational requirements. 

There is a caveat that distributed teams do worse with ScrumBut and other fractional implementations, than collocated teams.  It is very important that both the team and the rest of the organization are motivated, and support the Agile framework a distributed team has picked.  Detailed adherence to the letter of the framework, deep understanding of the philosophy of Agile software development, and willingness to experiment within the constraints of the system to find the best approach for the team are all necessary to achieve top team performance.

Distributed teams can deliver great performance at a fraction of the cost – when they are organized and motivated.  Agile frameworks are excellent tools to manage software development in a distributed environment.  However, it takes a lot of motivation, hard work, and there is little room for error or fractional implementations.