Agile emphasizes that all team members should be in one location for daily meetings, requirement discussions, designing, coding, testing, etc. Along with the trend toward agile becoming the predominant development methodology for software development, it’s more and more common to find project members located in different cities or even different countries.
When team members are in different locations, the primary challenge is the lack of face-to-face communication. Time-zone issues can also arise when team members are in different countries, and cultural differences can also add to the challenge.
One example we can discuss is a team that has used agile methodology to work for a Fortune 500 e-commerce website for over four years. Located in Shanghai China, our team works with a US team (California) and an India team (Bangalore) on software new feature development, production issue fixing and production support. Team sizes are roughly similar in each location and this is the case for more than 10 module teams. We have frequent engagement and collaboration with the other module teams, and under this model, we face all three challenges of location, time zone and culture.
Overcoming the challenge
To manage these challenges, we adopted the following practices:
Consistent over time
The team has adopted these approaches in agile projects for more than four years, and successfully managed the challenges of distributed teams. The US team, India team and China team have collaborated with each other well and delivered many important functions, during which time the site revenue doubled. The biggest impact has been on delivery speed.
Before the team adopted agile, it performed a release every two months. After adopting agile and the above practices, the team now performs a release at the end of each sprint. This means that delivery speed has improved by four times while keeping the same quality level.
Over to you
How do your teams navigate the sometimes complex issues of multiple teams in different time zones and cultures? Do you have any additional thoughts on this topic? If you are just scratching your head as to how to improve your team’s performance, reach out to us through the form to the right. We will help.