In high school, I was unstoppable. I was high school valedictorian. I was the best athlete, and I was homecoming king….
Did I mention that I was home schooled? A great joke from a funny comedian—but in all seriousness, working from home has some significant advantages, even if Marissa Mayer doesn’t think it’s right for Yahoo. While I think there are definite pros to having a team in close proximity—the official term is “collocated”—a company can also be incredibly productive while working apart.
Broadly speaking, there are three different engineering staffing models: all hands in a central location; all hands in multiple offices, and all hands scattered across the globe and telecommuting from home. At the Internet Systems Consortium (ISC), our staff is highly distributed by both tradition and preference. Two thirds of our 60 employees work from a home office—and one out of every four are outside the United States. This isn’t to say that our model is the universal best—I have had success running software companies with large overseas engineering labs and with all the engineers in one location.
Picking the right model depends on what development stage your software is in and what type of software you are creating. If the software is web-based and UI centric, a centralized team makes the most sense—particularly during the early stages when you are looking to innovate, not simply write code. The spontaneous hallway or coffee maker conversations prove to be just as or more valuable than formal meetings when it comes to aligning tasks and goals.
Building an offshore lab has many benefits too, not just in terms of costs—most places on earth have a lower cost of living than Silicon Valley—but also in terms of productivity. I have seen over and over again that engineers abroad have a focus and work ethic that can make or break critical projects. On the other hand, when things are changing rapidly or the project scope hasn’t been locked in, an offshore lab has a tougher time coping with the changes.
As mentioned above, ISC utilizes the telecommuting model. This allows our employees incredible flexibility. It also eliminates commuting time—something that’s becoming entirely unsustainable in Silicon Valley! Interestingly enough, in almost all work from home cases the engineers work harder than if they were in an office—they are essentially always “at work” and always online. Another benefit is the ability to hire and attract the best talent no matter where they live. As Bill Joy said, “the smartest people in the world do not work for you,” nor do they live within an hour.
Naturally, telecommuting is not without its own challenges, and to build a strong distributed company I believe an organization needs to perfect the four C’s; culture, clarity, communication and credibility.
Any company will struggle without a strong internal culture and shared vision, but a distributed one will suffer far more than a consolidated alternative. ISC benefits from a strong purpose and clear mission: We are a public benefit company, and we make infrastructure software to make the Internet run better with open source software—better meaning faster, safer, and more smoothly. We are also proud to maintain one of the world’s 13 rootservers, the F-Root.
Clarity in purpose solves many problems before they even appear. Before you begin a project, define what you are building for which market, and identify the operational constraints in detail. The opposite is just as important: make sure you know what you are not building, and which problems you are not trying to solve.
This C has become infinitely easier with today’s technology. ISC maintains an in-house chat program, based on Jabber, that is always available and people are always online. In addition, we make extensive use of video conferencing tools, including Skype, Google Hangouts, and WebEx. I conduct all one-on-one meetings via video conference. Finally, we draw upon a strong set of collaboration tools: Confluence affords us a centralized workspace to track projects, and we provide everyone with a VOIP number. The entire company is just a 4 digit extension away, no matter what country they live in.
Any distributed environment will inherently be somewhat inefficient simply due to time and geography, often leading to long periods where no feedback is available and no one is awake to consult with. To that end, a telecommuting company requires a strong system of trust—between engineers and management, management and company sponsors, and the company and its customers. All decisions are not going to be correct and all projects are not going to be successful. However, it is how a company handles its troubled projects that builds trust going forward. It is this trust that allows distributed companies like ISC to thrive.
As the old saying goes:
Success comes from Good judgment
Good judgment comes from experience
Experience comes from Bad judgment