Joel Spolsky Speaks To Osper On Remote Working

As part of our research on How To Be Awesome, Osper interviewed Joel Spolsky, author of such influential articles as The Joel Test and The Guerrilla Guide to Interviewing and founder of a rapidly multiplying family of awesome companies including Fog Creek, StackExchange, and Trello. We wanted to ask him about the nuts and bolts of remote working at his companies, and he was kind enough to spend a few minutes with us explaining how it works (over Skype of course). Disclaimer - this is our writeup of the notes, so any errors or omissions are entirely ours!

A typical boss, says Joel, thinks to himself, “I’ve got all this work and not enough programmers here in my office to do it. I’ll send a list of things to do to Remoteistan and see what happens.” Of course, what normally comes out a few weeks afterwards is late, buggy, and only tangentially related to what anyone expected. Why is that?

Well, this boss is using the “telecommuting” model - there is a head office where all the important stuff happens, and a bunch of other second-class citizens who link up with the mothership and do what they’re told by the privileged few back at base. As with most other programmer-hostile organisational structures, this one leads to disastrously poor communication, demotivated staff, and rotten software.

Instead, according to Joel, the way to take advantage of remote workers is to adopt a “headless” view with the locus of the company online - that is, acting as if all the developers were physically separated and only had the Internet for communication. This has some surprising effects.

Chat is vital. In this world, everyone has real-time, persistent, searchable chat open all the time, and uses it for most important things - meaning Hank from Hawaii can see what crazy new policy on semicolons his colleagues in New York came up with while he was sleeping. If you don’t reply to a chat message in 3-4 minutes during your working day, that’s like not being at your desk in a physical office - OK once or twice or when you have something scheduled, but a bad sign if it’s the norm. (Joel uses Slack for chat, but others are fine too - the keys are pervasiveness and searchability.)

Phone calls dominate. You might think decentralised teams should use a lot of email - after all, it’s asynchronous and persistent - but in fact Joel sees live conversations as vital to keeping the team moving fast. Imagine you write me an email, then wait until I respond tomorrow to come back with the 15 things you thought of since then. Our correspondence explodes in size and complexity and we get bogged down in debates over wording. Much better to pick up the phone and talk to me for a few minutes to resolve our questions with the highest-bandwidth, lowest-latency medium available. Some teams even leave open a video-call session all day so they can see each other and ask for help immediately when needed.

Video calls replace meat meetings. This means you run your meeting over Google Hangout even if most or even all participants are in the same office. Why? For the reasons just mentioned, you want as much information passing between participants as possible, and a video call can include not only the participants faces and gestures (have you ever tried to follow a meeting from “inside the speakerphone”?) but also links, screensharing, and code. In addition, it clearly communicates the “no second-class citizen” message if remote folks have the same experience as local people in the meeting.

“Office hours” takes on new meaning. Your colleagues may be in a very different time zone from yours, so how do you chat with them, meet them, and call them? Joel’s solution is to enforce a core set of hours, consisting of New York’s afternoon. The Europeans have to work into the evening, and Hawaii has to get up super early, and, well, Australians are kind of out of luck and have to start their own companies where the New Yorkers have to stay up all night to participate. And you have to be smart about team formation too; one team tried to function for awhile with an 11-hour spread between its most widely separated members, but even the core-hours concept failed here because there was no natural overlap time at all.

Have star developers and first-class tools. With Joel this almost goes without saying - the standard of your developers and their tools has to be excellent, with high scores on the Joel Test and everyone not only Smart and Gets Things Done but nice to boot. The brilliant loner who writes incredible code that no one else can understand has no place here, and neither does the head-in-the-clouds architect who tells you about his grand design for formally-verified Heroku deployments but never ships anything. As far as tools, everyone needs a very fast Internet connection and computer for all this chatting, and really good headphones are important too - Jeff Atwood insists on FM-quality audio, and Joel just lets you pay whatever you want for top-of-the-line gear that handles filtering, sidetones, and gives you a head massage.

Try weekly updates. Only some of Joel’s teams do a weekly email summary, but those that do find it helpful. Everyone emails the manager on Monday the standard brief update (“what did I do last week, what am I doing this week, where am I stuck”) and the manager not only concatenates these into one big message, but also sticks a summary at the top with the high and low points. This helps everyone stay connected and working in concert.

I hope you’ll agree this is a very different world from the Remoteistan model! It’s an investment of time and money for sure to set up, but you get all the standard benefits of remote working: happier developers who don’t quit when their families move, access to a global pool of talent, and minimised distractions, among others.

We also asked Joel about some of the legal practicalities. For instance, how does he employ the staff? His solution is to have umbrella companies in the US and the UK who employ everyone in the States and the EU respectively, and to make everyone else contractors. There is a lot of administrative headache - for instance, does the company pay for health insurance for US contractors, and how do we keep that equitable for EU staff who don’t need this? - but it’s nothing a competent HR person can’t handle and the cost to manage it amounts to a rounding error. As far as salaries, he rejects the Remoteistan model where you earn a standard wage for your local country, as that can lead to inequality and resentment; instead he just pays everyone a New York salary with a small adjustment for local cost of living, and the result is that New Yorkers are happy with their normal salaries and everyone else is ecstatic about theirs, hence strongly motivated to stick around and write great code.

We learnt a tremendous amount from Joel in just a few minutes and now have to digest everything he told us. Is remote working in the StackOverflow style suitable for Osper? Stay tuned to find out.