Tip 1: Don’t distribute your team members.
Instead, co-locate everyone in a place of their own.
Tip 2: Fight hard for tip 1.
Establish a relocation service if needed, find temporary apartments, … be creative.
OK… now the problem is that, in 2018, people don’t want to work onsite every day anymore. If you, as a company, don’t offer home office, flexible work hours and support for work-life balance you’re out of the hiring game.
And it keeps getting harder to find good people, too. I don’t know about your company but we’ve been looking for talent from all over the globe, and some of them actually want to stay where they feel at home.
So…
Tip 3: Personal contact is key
Distributed agile teams CAN be successful – but you need to meet in person when you start working and repeat that move every once in a while. I cannot imagine doing a retrospective – in a psychologically safe and effective way – with people that I’ve never met in person before. Lunch or drinks work even better.
Here’s a model that I know to be effective:
Each developer starts onsite, stays for a couple of weeks (3-4), returns back home and works there. Repeat this so people work onsite at least twice per year.
As a result…
Tip 4: Professionalize travel and accommodation
Visas need to be renewed, flights need to be booked. You might want to rent company-owned apartments because hotels are expensive. People need to be picked up from the airport, apartment keys need to be handed over, cleaning service must be managed.
Get good at this.
BTW: keep the additional cost in mind. A distributed team is not cheaper per se.
Tip 5: Technology is key, too
Personal contact is the foundation – but you also need decent technology for your in-team communication:
Network
- Good internet connectivity at each end-point
- Low latency. It’s super-annoying when someone tries to reply but lags 5 seconds.
Audio
- Good microphones and speakers!!!
When these are bad you just can’t understand each other which is the end of all communication. And they must be REALLY good because reality makes people with Indian English, German, Russian, Polish, Serbian, Macedonian, Ukrainian, Cockney etc. accent work together.
For example I learned that “what about the books?” is British “English”(?) for “what about the bugs?”. - Good: Headsets
- Bad: Conference Phones
If you see any of these (regardless of make and model) throw them away. - (There are OK-ish alternatives that can be connected to a PC via USB.)
Video
- Every remote participant should have their cam switched on to promote focus and a more personal experience.
- For the onsite people:
- You should have at least 1 high resolution camera so you can film a whiteboard when someone writes stuff on it.
- You should also have at least 1 more cam to capture the room and people. This makes the experience more natural.
- Alternatively, you might also choose to have everyone use remote access, even those who could potentially meet onsite. See also tip 6.
Tools
- I love physical boards and stickies. However, with a distributed team, you will have to take pictures of them and send them around. As this can get tedious fast you might want to switch to JIRA, Trello, Targetprocess or similar to do this electronically.
- For some events you might want to try out some specialized tools. Funretro for example helps you do your retros with distributed people. There are tools for doing planning poker online as well like Estimation Poker, PlanITpoker and many more.
- Evaluate the right conferencing tool. Google Hangout is reliable and super-easy to use, WebEx also supports telephone dial-in, Zoom allows for handing over your mouse to a remote user, etc. Try some.
Preparation
- Make sure your tech is up and running by the start of the meeting.
If 10 people have to wait for 10 minutes it will be a total of 100 min of wasted time. Also, it’s just unprofessional. - Even better, have the tech ready some minutes earlier. This way the early participants can just chat and do small talk. This helps getting the team spirit up in spite of the distance.
Tip 6: Integrate them all
Make sure working onsite and offsite are truly equal – and be consistent about it.
Do pair programming, feedback talks, trainings, etc. with everyone, regardless of their current location. Do career planning with them and promote people based on their merits, not on their location or onsite-time.
Also, you might want to abolish the concepts of “onsite” and “remote” altogether – make everyone use the same remote technology even if they could meet in person. (As a positive side effect each participant will use headphones so good audio is most certainly a given.)
Tip 7: Ensure “mental health”
A CTO Think podcast reminded me of this: Remote work is different whether you work in a remote office, co-working space, a shop of some sort – or if you work mostly isolated in your home office.
Getting a regular, minimum dosage of human interaction has proven to be important, even for nerdy introverts.
Agree?
Which tools do you recommend?
Leave your comment, like and share.