What do you find are your biggest challenges when working in distributed teams cross timezones & culture? curious what folks think or how they compensate and educate folks
Distributed teams are great, working remote is less great. The tipping point for me is, are more than 2/3rds of the team you work with also working remote? If they are, you have a distributed team. If not, there’s critical mass for an “office core” team, and everyone else is a satellite around it, frequently forgotten/neglected.
I recently started working from an office again after many years working from home or as an external consultant, some of the things I love are watercooler conversations, hearing at the last meeting about in-person meetings, and being able to attend them, and in general feeling like I am clued in to what is going on in different parts of the company. The down sides are bad chairs, limited desk size, interruptions. I have a short commute, so I am not losing 1 or 2 hours of my life in traffic every day, though.
Generally, working remote deprives you of regular hang-out time with people in the same company/industry, and encourages bad personal habits (and work/life balance) - I used to fill that gap by meeting with my other remotee neighbours, organising and attending meet-ups, and generally paying attention to my social life and health.
There are several permutations of this kind of distribution, and I can only really speak to my own experience where everyone is work from home and distributed around the world (no central office, very few of us see our colleagues on a day to day basis). Also, I work as a systems administrator on an open source project, so some of the suggestions I have are made with operations in mind. Some of the things we’ve done to make sure we have team cohesion:
- Have good, up to date documentation for everything so everyone on the distributed team knows where to find the latest information about processes, best practices and tribal knowledge.
- Make cross-training a priority. You don’t want to leave one shift with access to the tools to do the work but not the knowledge for how to fix something when it breaks.
- Have several people in each zone, it can get very lonely when you’re the only one working a certain shift and is stressful if something major goes wrong and you’re the only one available to make decisions on how to fix it, rather than working with others to come up with a solution.
- Communicate in a text-based medium that makes reading the backlog of the day’s tasks simple, whether that be IRC or some proprietary solution. Avoid voice/video for major discussions unless you’re taking very very good notes, these are really boring/tedious to watch after the fact for people who couldn’t make it, and they can’t just skim through them.
- Encourage everyone to go to conferences and local technical events, including during work hours. In addition to the skills gathered, human connection is important.
- Meet in person at least once a year. At my old job I’d fly in to meet with the team, usually when I was in town for some other event/reason. Today I depend upon the bi-annual OpenStack Summit events to sit in a room with everyone I work with twice a year. It helps us have high bandwidth time without technological snafus and also allows us for socialization, which is often missed when we’re so far apart.
But ultimately it’s still hard. I wish we had a better way to do daily hand-offs, reading a whole IRC backlog from a day to see what has gone on while you were gone is really painful. Our team meetings are not rotated for time zones, so it’s a good mid-day meeting for US contributors (the majority) but evening for EU and very early for APAC, people either need to adjust their schedule to attend, or risk feeling isolated for never making it to the meetings (even though they can read the logs).