Managing conflicts in the distributed development team
Maryna Prudka
VP of Engineering at Apriorit | SaaS and Cyber Security Solutions Development | C++/.NET/React/Go | upwork.com/ag/apriorit
Here in Apriorit, management activity includes communication, reporting, supervision, scheduling and priority management tasks, since predictability and common sense are among our corporate values. So trust me, we have lots of work)
Managing a big fixed-price project is always a challenge and often a stress, as there’s no room for deviation from the estimated project course.
And more pressure is being added if the development team is distributed between different offices.
Such tight conditions sometimes could lead to the conflicts within the project teams.
In the big complex project, we try to divide the scope into separate modules to split tasks between team members in order to speed-up the project development process.
Conflicts between developers could appear at the stage of cross-integration of the separate modules into one core, as nobody likes when there is the possibility that another's feature can have an impact on the well-coded and tested functionality (as everybody thinks about their work). Nobody likes to fix others' bugs.
Communication barrier which usually takes place in the distributed team just adds fuel to the fire.
Here is how we manage such situations:
Do retrospective meeting within the project team on a regular basis. Even if we work mostly by a waterfall, we try to do short iterations and do retrospective after completing each iteration. The retrospective meeting is a perfect chance to detect the conflict on the early stage, listen to all stakeholders and find the right solution together.
We’re trying to add more interactivity to our regular status meetings. In our distributed team we started to use webcams in all our Skype meetings. It’s a very powerful tool when the manager needs to look squarely in the developers’ eyes or give them a smile.
In the long-term project, the problem could be that the team lost the main focus and the main goal of the project, as everybody is focused on his or her separate tasks. It is important to keep reminding about the final project goal on the every integration step. As a manager, just make the team members keep in mind that we do not release a module, our final goal is to release high-quality product, and all our actions have to be done with this thought.
Eventually, visit your remote team. Even better if you make a surprise and visit the team occasionally and with gifts. :) This is always a great idea when remote developers work hard and start losing the feeling that they are part of the great team which does great things.
U can read more about our dedicated teams and unique Apriorit delivery process here https://www.apriorit.com/