Remote software work is increasingly common. At the beginning of my career, it was almost unheard of. But over the years it has grown steadily. I’ve been working from home for 10 years now, and when I gave a talk on the topic two years ago, fully half of the audience were working from home on a daily basis.
But there are still challenges.
For the past five years, I’ve been a part of a large software team that is heavily distributed: more than 60% of the LivingSocial engineering team works from home, spread across several time zones and a few countries. At its peak, the team was about 180 people, with well over 100 developers working from home or in small satellite offices or coworking spaces.
At the start—even after we had a substantial number of remote developers—the team managers worked at the office. That is a very common model. But eventually, as the team changed and grew, we found ourselves with managers working remotely, too. From 2013 through early 2016, my colleague Maria Gutierrez and I worked from our homes (me in Dallas, Maria in Edinburgh) as Engineering Directors, managing distributed teams ranging in size from 30 to 80. We made a lot of mistakes, but we also got a lot of things right, and we learned a lot from successes and failures alike. And at every step, we received valuable feedback from others at every level of our organization.
It seems like a good time to start sharing what we’ve learned. More companies are trying distributed teams. There are many reasons to do so. Here are just a few:
- A company might choose that direction, as LivingSocial did, to make it easier to recruit excellent developers.
- A company might want to provide more flexible working arrangements for its employees.
- One company might acquire or merge with other companies in different cities.
- Talented developers may wish to relocate for personal reasons, and the company might decide to “go distributed” rather than lose the valuable skills of loyal, dedicated employees.
- The company might move its headquarters to a different part of the city, with some team members asking to work from home rather than endure a longer commute.
Maria and I would like to share our experiences with those who might be starting down a similar path. In coming weeks, we’ll be blogging here about how to be effective in managing distributed software teams.