Steven Schuurman is the CEO of Elasticsearch, which provides real-time search and analytics tools to developers based on the Elasticsearch, Logstash, and Kibana open source projects. It was a distributed company from day one, partly because of its open source roots. The projects’ contributors and users were already scattered all over the world.
"We said we want the best people period," says Schuurman. "We just don't care about their location. The best distributed organizations completely and utterly embrace the fact that they are distributed. If you can get the distributed nature of an organization to work for you, you also get infinitely better interaction with your install base."
Elasticsearch has two main hubs—in Los Altos, California and Amsterdam in the Netherlands—and a slew of smaller offices in places as diverse as Phoenix, Paris, Prague, Austin, Boston, Barcelona, Berlin, and Romania. Two thirds of its employees are developers.
Elasticsearch is not Schuurman’s first distributed company. He was also one of the seven founders of SpringSource, a company built on the open source Spring framework which was sold to VMware in 2009 for $420m. Several of SpringSource’s founders had never met in person before they started the company together.
"Messing something up is much easier in a distributed org," says Schuurman. "In an ordinary company, you can make many more mistakes because you spot them earlier." Here’s how to avoid some of the those mistakes.
Setting up an international commercial organization is complicated and expensive. You have to deal with different legal systems, tax regimes, accounting rules, and language barriers. "Those are way harder to deal with than when effectively you just communicate about code and about product," says Schuurman.
You’ll need an accountant who specializes in international accounting and a law firm which has a global network. One of the first people Schuurman approached to join Elasticsearch was its CFO, Nick White. White set up all the legal entities, and commercial and reporting infrastructure for the new company within a few months.
"Find people who can advise you how to get it done properly," says Schuurman. "It's a massive investment and a big cash drain but you do it anyway because if you don't get it right in the first year or two and you start scaling up the organization, you are in a world of hurt later on. You have to get it right pretty much from day one."
Executives at Elasticsearch must work at one of the main hubs, partly because they need need to interact regularly with the company’s investors and board of directors. "Also, the simple truth is that there is the highest concentration of A+ quality IT execs in the Bay Area that can run high potential startups," adds Schuurman.
Engineers, on the other hand can be located anywhere, which is not to say that every developer is cut out for this kind of environment. Elasticsearch looks for people who are smart and skilled but also highly communicative.
"People that are fairly outgoing, that won't chew on a problem for days without reaching out," says Schuurman. This also means that problems are highlighted early. "Before an issue becomes a real problem, it's on the table. It's out in the open."
More importantly for Schuurman, his distributed employees need to make a broader contribution to the company, often taking advantage of their location to do so. "There are guys who are really, really smart who we just won't hire. We want people who are interested in more than just the code."
"That doesn't just apply to engineers. My sales guy that sits in London enables the London Elasticsearch user group. He looks beyond his direct responsibilities. I don't care whether it's my accountant in Germany or my sales engineer in Portland or my VP of sales in Los Altos, these guys all care about how do we work together to make our customers happy."
Once you have hired the right type of engineer, let him manage himself. "If you are going to have someone who sits 1,000 miles away from his nearest colleague," says Schuurman, "you'd better get someone who is super comfortable with operating like that, who has the freedom to take his kids to school in the morning, does grocery shopping right after, and only starts work at 10:30 a.m. You have to give people the possibility to completely embrace the fact that they have a lot of freedom: how they go about their process, how they manage their time."
Finding the right developers regardless of where they are and giving them the freedom to decide how they work seems to be paying off for Elasticsearch. "I've never seen a team this productive," says Schuurman. "It's shocking how productive this team is. We have been able to take Elasticsearch from a project to a thriving company in just over a year at four times the rate at which we grew at SpringSource."
According to Schuurman, one of the biggest shifts in going from working on an open source project to building a company based on one is that "you have to make sure that whatever you do is more predictable and reliable." The first step to achieving that is making unambiguous decisions and communicating them clearly.
"At the end of the day you're not sitting across the room from your direct colleagues," says Schuurman. "Sending out mixed signals or setting objectives that are subject to misinterpretation can easily lead to folks working toward the wrong goal."
"The way I have always approached this is by repeating my goals and objectives over and over again plus I constantly double check whether they are well understood by discussing with folks how their deliverables contribute to the higher objectives. Whereas this is especially critical in a distributed org, it's really a best practice that all companies should follow."
"A big pitfall for a distributed organization in today's world of Skype and Google hangouts and what have you," says Schuurman, "is that you forget about the value of face-to-face. We heavily invest in face-to-face time."
The entire company gets together about twice a year but Elasticsearch also takes every opportunity to bring employees who are not in the same office together. "When we do a public training course, we never have just one teacher, we always have two. We ideally never send one person to a conference even if we don't have a booth or just have one talk. It costs a fortune. At least it looks like it costs a fortune, but it's worth it. You build much better rapport."
A lot of Shuurman’s advice boils down to being extra-disciplined. "You have to be so critical. Your standards have to be super high in order to really make it work successfully," he concludes. "The knock-on effect of that is that you have an organization that becomes run so efficiently and becomes so productive that it shows in your numbers."