Some people demand that their workers be in a narrow time band like North America, or Europe. They feel that it is important to be able to communicate with colleagues during working hours. However, time waits for no man. You might not have a choice. The same forces that are spreading people out into distributed teams are also spreading them out across time zones. And, your time zone will limit the talent that you can bring to your team. You might want someone outstanding from an alien time zone. When people in America and Asia work together, the time difference is often at the worst case of 10 to 12 hours. So, it's important to understand how to work together across time zones.
I don't recommend that you ask people to work abnormal hours – for example, a night shift in India to match the American day, or early morning for a hard-core night owl. Sometimes this works in reverse and the manager gets up at 4:00am to talk to workers. It's bad for health and family life, and it's going to hurt productivity and retention. If you follow my recommendations below, it's not necessary. You should set specific requirements for communication, with minimal rules for working time overlap, availability to respond to calls, and working hours per day. If someone meets those requirements, they should be free to schedule the rest of their life.
Here is the easy recommendation: Use a team workspace like Assembla that helps you track everything in writing. Write your tasks and comments in tickets, not email. Watch the activity stream of edits and commits.
You will want to do a chat. Use a persistent chat like Skype conference chat, or Assembla chat, so that team members can see what is happening at any time. You will need to decide if you want a scheduled daily chat, or an unscheduled conversation that people join when they are available. Typically, we start a project with a scheduled chat, and optionally move to an unscheduled conversation if the team members are having trouble meeting at the same time, and have experience working together.
Do NOT change the time of the chat. Set one time that approximately works for most team members, and stick with it, and people will adapt to that time. At various presentations I have heard Johanna Rothman and Scott Ambler recommend moving the time of the chat or daily meeting to “share the pain” of times that are inconvenient for one side or the other. They are supposed to be experts in distributed agile, but I suspect that they have never actually worked on a fully distributed team. If you move the time, you will lose people, and people will not be able to adapt.
I recommend that you do NOT schedule daily conference calls. People hate them. It's difficult to get everyone on the call. And, for some reason, conference calls are associated with low productivity. I have yet to hear anyone say “I worked on a project with a lot of conference calls, and it was great!” When I see a project that is scheduling daily calls, it is almost always a project that is in trouble. Typically, a project manager asks for these calls in order to share his problems, rather than to solve problems for the team.
When you make an appointment or schedule a chat, specify all times in UTC, 24 hour time. So, 9:00 AM in my US Eastern time zone would be “14:00 UTC”, since my time zone is UTC-5. Each person will only need to know his own local time, and the UTC translation.
Set your servers to UTC time also, so everyone can read the logs.
Use a tool that correctly displays activity in your local time. The Assembla app will display all times in the preferred time zone that you set in your user profile. So, if I see that someone wrote a ticket at 9:30, I know that was 9:30 eastern time, even if it was 16:30 where he did the work. Skype and many calendaring tools also do this correctly.
If you have more than four people working together, use the Assembla standup reporting tool. It's the easiest way to figure out who is working on what. I recommend that you ask people to submit their reports when they start work each day. However, if you have a scheduled chat, you can ask them to write the standup report before the chat. This gives you a traditional standup meeting – a short report, followed by a chat about priorities and obstacles.
If you have any other management tips, please share them.