In a recent blog post, Tobias Mayer observed that one of the hottest topics around is how to do agile with geographically distributed teams:
Many Scrum practitioners these days are working hard to come up with the best way to make Scrum work in distributed (usually off-shore) environments. There are many articles being written on this topic, and many submissions to the major Scrum and Agile conferences. They all say something similar, we know that co-location is ideal, but the reality isâ€¦ and then go on to offer â€œsolutionsâ€ (read work-arounds) for the non-ideal, real world situation where team members are scattered around the globe.
Tobias’ main point is that we should question the assumption that we have to work with distributed teams:
It is interesting how the phrase â€œthe real worldâ€ is used almost as a weapon to wield against the idealist: yes, it is all very well to say that teams should be co- located but that is not how people actually work in the real world. We seem to forget that reality is not something that is imposed on us. Reality isnâ€™t just there; we create it. The phrase â€œthe real worldâ€ is akin to the phrase â€œitâ€™s just the way we do things around hereâ€. Both should be challenged with a healthy dose of skepticism and a steady barrage of â€œwhyâ€ questions. Just because it is, doesnâ€™t mean it has to be.
From my experience, I think Tobias is absolutely correct on both counts. Whenever I’ve heard someone ask about making agile work with distributed teams, the first response is that it can’t; teams need to be collocated. And invariably, the person posing the question replies that the decision to have a distributed team is out of their hands. And in my experience, most of the time, the decision to embrace off-shore resources really is out of the practitioner’s hands. The practitioner can question the wisdom of distributed team all he wants to no avail.
But you know, this is just a subset of the general issue with offshore development. The exec who makes the decision sees money: I can hire two engineers in X for the cost of one engineer in Y. But the practitioner has to deal with the reality: two engineers geographically removed from the rest of the team are hardly as productive (or less so) than one collocated engineer. Plus, the company is paying gobs of money to fly people around the world to manage the arrangement.
As the outsourcing situation matures, my prediction is that decision makers will begin to understand the actual value proposition of outsourcing, and we’ll see more collated teams again.
If the problem lies with distributed teams, not with some fundamental disadvantage of off-shore development itself, then the people advocating collocation had better be prepared for this eventuality: their company may just decide to collocate teams by moving an entire development effort off-shore. I know of one company in Austin that has moved all of its development to India, and my own company has relocated all development for one product from the US to Singapore.