I'm in a position where I am leading two teams of 4. Both teams are located in India. I am on the west coast of the U.S.
I'm finding leading remote teams challenging: First, their command of the English language is weak. Second, I'm having difficultly understanding them through their accents. Third is timing, we are 12 hours apart.
We use Skype to communicate.
I have a month to get the project done. We've burned through a week just setting up the environments.
At this point I'm considering working their hours, 11p PDT to 7a PDT, to get them up to speed, so that I can get the project off the ground. A 12 hour lag time is too much.
I'm looking for steps I can take to be successful at leading an offshore team.
The offshore team's primary task is coding, of course, most coding tasks do involve some design work.
The offshore team's are composed of one lead, 2 mid level (4 to 5 years) developers and a junior (~2 years) developer.
The project is classic waterfall. We've handed the offshore team a business and a technical design document. We are trying to manage the offshore in an agile way. We have daily conference calls with them and I'm requiring the teams to send me a daily scrum in the form of an email answering the following questions:
- What did I do today?
- What am I going to do tomorrow?
- What do I need from Chuck so I can do my job tomorrow?
There is some ambiguity in the tasks. The intent was to give them enough direction for them to develop the task with out writing the code for them.
I don't have a travel budget.
I am using Fogbugz to track the tasks. Each task has been entered into Fogbugz and given a priority. Each team member has access to FogBugz and can choose what task they wish to complete.
Related question: What can we do to improve the way outsourcing/offshoring works?
I've decided that I can not talk to the team once a day. I must work with them. Starting tonight I've started working the same hours they are. This makes me available to them when they have questions. It also allows me to gain their trust and respect.
The project was completed and delivered on time.
The key factor was me working the same time as the offshore team. If that had not occurred I'm confident we would have failed. I managed two offshore teams. One of the teams under preformed and I fired them taking on the work myself.
Things that lead to success was:
Communication, understand their culture and how they communicate. Build rapport with them. A couple of the workers I keep in touch a year after the project completed.
Meetings, we met at the beginning of their day so any questions or blocked tasks could be addressed. At the end of the day a daily summary was send out by the worker describing their day and if they encountered any issues. Ideally we could resolve their issues by the start of their next day.
Questions, ask questions. Most cases information is not volunteered.
Be visible. Being online, available and reachable help fostered the team's commitment to the project. I was not just the daily email.
Make it easy. Internally we had a complex QA system in which bugs where tracked. It was complex and hard to use. I paid the $$ for a fogbugz account for each of the team members. Most of the team had used FogBugz and understood the workflow. Daily I would update the fogbugz with new bugs and update the QA system from Fogbugz. Stackoverflow question Leading an offshore team