After being a buzzword for years, Agile has now become the go-to development methodology for most entrepreneurs. However, if your development team is remote, working on agile is a challenge. In this article, we highlight some conflicts which arise while you are working with distributed agile teams. Let’s identify these issues and understand how you can deal with them.
-
Trust and Vision Conflicts: When your team is sitting miles away from you, people issues are bound to arise. The foremost challenge is to create an environment of trust. You meet your in-house team everyday and thus they can relate to the company values better and understand you as a person. But the remote team rarely gets to see you, so winning their faith and driving them towards a common vision requires escalated efforts. The challenge is to make them feel like a part of the bigger team.
How Can You Deal with It?-
Communicate regularly and effectively. Having face-to-face interactions helps. If you meet them personally, say once or twice a year, it works wonders in fostering the connection between you and your team. Building socialization platforms and creating opportunities for informal conversations is also a good idea. Team building sessions also help. Gaming sessions and co-worker trivia can come in handy when establishing a better relationship with your remote team.
2.Time Zone and Cultural Conflicts: Distributed teams come with cultural, tone and body language differences. Since your team is sitting in a different country and time zone, you need to acknowledge their culture and local ethnicity. They speak a different language, follow different holiday schedule and follow different religious beliefs. You need to take all of these into consideration while working with people sitting in different continents. As for the time zone, if you are available at 4 PM EST, you can’t expect your team, say in Bulgaria, to be available at the same time as it is 11 PM their time! This difference also makes it difficult to address roadblocks or answer questions when they come up.
How Can You Deal with It? -
Make everyone on the team aware of the time zone differences. This will allow them to plan accordingly. Secondly, promote end-of-day status notes and developer-to-developer handshake. This addresses the timezone challenge. If something requires your feedback, end-of-day notes will make sure the time difference doesn’t impact the pace of work. Developer handshake means the teams will share their check-in status and provide an update on the code.
-
-
Include all members in Scrum Planning to help understand the common vision. Do all scrum ceremonies in the presence of the remote team. Regularly share project updates and client feedback with them. If possible even spend a sprint or two with them at the offshore site. Piyush Rahate, a certified Scrum Master, while sharing his opinion in one of the discussions on LinkedIn, said “We did the reviews together; but retrospectives on individual team basis and then shared the action items across the teams.” The idea is to make them feel as part of the bigger team.
-
Collaboration Conflicts: Agile requires extensive communication, which is difficult with remote teams. Since distributed teams do not get enough face-time, their understanding gets affected. Real time collaboration is also difficult, resulting in growing in-team conflicts. Besides, synchronizing remote team with the local team/stakeholders/clients is an inevitable challenge. You can’t rely on typical storyboard method to show project status as your team sits miles away.
How Can You Deal with It?“We almost doubled amount and frequency of communication in comparison to onsite teams; we traveled to each other not only for kick-offs or common sessions, but also to sit down and work in the same room for some time too”, says Vladimir, Consultant-Trainer in the same discussion.
-
-
Bridge the communication gap with technology. Build an empowered communication and file sharing infrastructure that utilizes the best tools available. A research conducted by Human Computer Interaction Institute shows that visual communication tools like Google Hangouts and Microsoft Sync can improve collaboration. Other tools that can be used are VOIP, instant messaging, mobile phones, Skype or wikis.
-
A know-how of technicalities and soft skills helps. This is especially true when you are handling negotiations and conflicts. While these skills come naturally to some people, others need to be trained to hone their skills. This becomes more important when you are working with global teams.
-
-
Space Layout Conflicts: Space layout is an integral element of collocated agile team, but it equally impacts distributed teams as well. Since everyone associated with the project is not in the same space, they have to work towards communicating rather than focusing on the project. For example, when the team is remote, the possibility of everyone coming together in one room and brainstorming is next to impossible. In this case, team members become mere observers.
How Can You Deal with It?
-
Get your remote team a space that allows for collaboration. Get chat tools like HipChat, Slack and Hall or Voice over IP connection installed on member’s computers. Build an infrastructure that minimizes distraction -have focused time for work where you allow no interruptions and of course schedule in your time to communicate with the team.
-
Group sessions are a necessity, not a choice. Get your remote team access to all the remote work tools for task management, collaboration and communication. Make sure they have adequate bandwidth, good network resources, requisite tools, servers, desktops etc. eliminating any possibilities that can lead to communication gaps. This allows your team to move past hindrances and no longer struggle to find the right collaboration space and tools.
-
Project Delivery Conflicts: You may put in your best efforts to explain an interface to your team, it is hard to explain to distributed teams the logic of the interface. Documenting assumptions related to implementation, and expecting the team to function in an agile manner, is a rare possibility. Besides, its not easy to read complicated design specifications. This leads to a risk of having multiple implementations of the requirements.
How Can You Deal with It?
-
Continuous Integration. Place everyone on the same code base. This ensures that everyone is on the same page regardless of their locations. This way you can identify integration problems ahead of time, before they get buried deep. You can choose from open source continuous integration tools like Hudson, CruiseControl and Jenkins, or use their commercial counterparts like Microsoft’s Team Foundation Server and ThoughtWorks’ Go.
-
Create short stories out of the requirements and share these storyboards with the team. These pictorial representations of product-user interaction can list out great details while allowing for higher levels of engagement. It requires the designer to have some additional skills, but can considerably reduce the time taken in processing.
People and communication being the most important pillars of any project, need to be addressed from the beginning. The above expert suggestions can help you deal with most of the issues you face while working with distributed agile teams.
Have you faced some similar conflicts while dealing with distributed agile teams? How did you cope with the situation? Please do let us know about the experience in the comments section below.
Looking for a remote team to handle your next agile development project, but not sure where to look? Let VenturePact help you. Click below for a free consultation call with our experts.