Making Distributed Agile Teams “Work”

First we have to ask ourselves “What is our definition of  making distributed teams work?”.  I have managed and coach distributed agile teams that “make it work” however they understand that the level of effectiveness will not be the same as a co-located team and some of them learned that painfully.

Unfortunately, all too often the leaders that decide to outsource do so strictly on a cost based consideration and don’t consider the other pitfalls of doing so.  They don’t take into account the value side. (It doesn’t matter if you cut your development costs by 30% if the productive capacity of the team drops and the quality goes in the toilet because often you end up increasing development costs because of mounting technical debt.) Pitfall

This situation frequently happens because some ‘superstar’ may come in and show a way to reduced development costs by some impressive percentage, they displace local employees, establish and off-shore presence and to lower shorter term costs, but rarely as much as predicted.   To often this person is rewarded, held up as a star and promoted.   Then the poor bastard that takes their place inherits the true cost of the oursourcing; often dysfunctional, lower productivity teams that delivered lower quality.  This follwed by the inevitable dissatisfied customers that start to bombard the development group with escalations.  

Variability of requirements is the number one hiderence to achieving predictable delivery in terms of time and quality and escalations are usually at the top of the list of things that cause variability in requirements.  This cost is not factored into outsourcing decisions and I’m not saying it happens all the time but in my experience, it happens more times than not.

The cost-benefit of outsourcing aside, we live in a world where distributed teams are a fact whether gotten to by outsourcing or acquisition.  So, here is a checklist that I have found can “make it work”

1. Minimize the dependencies between sites. If this means redrawing the ownership lines, do it. You will greatly lower the risks caused by lines of ownership of a solution that force a higher level of collaboration.

2. Transparency of progress and quality – with distributed teams it is even more important to up to date picture of the trends on a project because corrective actions can take longer

3. Script the important collaborations – don’t make collaboration optional between the teams when planning, tracking and reviewing. (Of course this doesn’t mean everyone on all teams).  The level of collaboration will be context specific to the domain of the work, its complexity and the maturity of the team

4. Solid build automation and a strict policy of no one breaks the build (if someone 12 hours away checks in and goes home and has broken the build trouble ensures and trust erodes)

5. Ensure that teams at different sites are managed to the same measure of success.  I was leading an Agile Initiative at a company that was building a suite product.  Unfortunately all the distributed teams weren’t managed to the same measure of success, one had a very high commitment to quality and was managed to that and the others were managed more to the feature checklist mentality, their incident of defect was 57% higher than the other team… I don’t think I need to explain the issues that ensue from such a situation.

6. Leadership roles (SM, Agile Project Managers & Functional Managers) need to monitor the level of trust between the teams and have their own backlog / plan for how to continue to grow this (use agile to scale agile)

Using this checklist I have seen distributed teams “work”.  However we must keep in mind when we decide to distribute human beings, especially across significantly different time zones, we have chosen to lower their ability to communicate effectively, collaborate and hence build trust.  So before distributing teams for “cost” reasons make sure you truly understand the cost of doing so in terms of reduced productive capacity of the whole, level of quality produced and the cost of supporting lower quality in terms of escalations.


About Mike DePaoli

Mike DePaoli has been contributing to the IT community for over two decades and practicing agile and lean approaches to software development since 1996 in roles from programmer to CTO. His evolved approach to crafting successful lean-agile software development organizations was forged by the meaningful challenges he undertook at prior employers and as an Agile Coach at companies such as eBay, Adobe Systems, AOL, NetApp, Disney, Boeing, EMC, and Trizetto. Mike’s area of expertise is helping organizations craft strategic change initiatives that educate on and establish agile and lean values, principles and practices at every tier of the organization. Mike applies systematic thinking with a multi-discipline approach to his work. Mike is a Certified SAFe Agilist, Certified Scrum Professional, Certified Scrum Master (CSM) and Certified Scrum Product Owner (CSPO). He is a highly-regarded speaker in the Agile community having spoken at Agile conferences in North America, South America and Europe. He is currently based in the San Francisco Bay Area.

No comments yet... Be the first to leave a reply!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Lean-Agile Leadership - Exploring the Creation of Fertile Environments and Culture for Lean-Agile Software Development


Lean-Agile Leadership - Exploring the Creation of Fertile Environments and Culture for Lean-Agile Software Development

The Agile Horizon

Lean-Agile Leadership - Exploring the Creation of Fertile Environments and Culture for Lean-Agile Software Development

%d bloggers like this: