I made it to Frankfurt without incident. Well, except that the taxi driver took me to the wrong hotel (same name, different part of town). I’m now ensconced in my fashionable Euro-hotel with expensive Internet access, and ready to work on getting into the local time as fast as possible.
International travel has certainly changed in the 10 or so years since I was last here. The rise of international data networks means that I can get here solely with my passport and electronic tickets, use my ATM card to get local currency, and once on the Internet it is almost like I’d never left home. No more travelers checks, paper tickets, expensive phone calls or time spent in line at the currency exchange.
These networks have also changed the way companies are organized. At The OpenNMS Group we are often spread out geographically, yet it doesn’t seem to matter. This week I’m in Germany, Dave is up at Quantico, Matt will be in Durham part of the week, Ben is in Vancouver (Canada) part of the week and Jeff is in Atlanta. But through IRC, Jabber, e-mail and Skype it is just another day in the office. This ability to run a company with a distributed workforce translates directly into the ability to run a distributed project such as OpenNMS, and I thought I’d share some of my thoughts on what makes the arrangement successful.
Trust: When I worked at NORTEL the phrase “Working from Home” was code for “I’ll be checking e-mail occasionally, but for the most part I’m slacking off for the day”. It takes a lot of trust in your people to know that you can leave them alone unsupervised and know that the are actually working. This is usually easy for the most part at OpenNMS because we only hire people who are extremely passionate about what they do. When you are selling services, your reputation is in your people and it is tied directly to your success. Thus I rarely worry about my guys not working (in my mind they work too hard), but that does lead into the subject of …
Time: At OpenNMS we are results driven. I’m writing this at about 10pm local time on a Sunday, which is well outside of normal business hours, and my team tends to work just as hard. Work gets done at all hours of the day and night. But it is important to set aside some period of time during the day where everyone is available. There is nothing more frustrating than needing some help and not being about to get it. In a traditional business office, one could just walk over to another office or cubical to ask for help. When everyone is separated by considerable distances and sometimes oceans, being able to quickly reach someone is important, and to have some kind of standardized work hours helps with that.
Tools: Another important aspect of running a distributed company is the choice of tools. For me, e-mail is king. My life is driven by my Inbox, as it also serves as my “to-do” list. During a normal business day I can expect a response to an e-mail sent to the team within 10 to 15 minutes.
If I need something sooner, or if it is just a quick question, we also use the Jabber instant messaging protocol. We set up a private Jabber server for just employees. While I love chatting with people, when I’m on public IM services I sometimes get overloaded with “Dude! How’s it going?” messages. It is key to have the IM equivalent of the “red phone” where people are quick to respond and the Signal to Noise ratio is high. We’ve had to actually implement strict “auto away” policies where if you are away for even a couple of minutes you status will reflect it, because unlike e-mail being unresponsive on IM is frustrating.
We also use a number of other collaborative tools. We have an internal mailing list, shared calendars and an internal wiki. The goal is to make sure that everyone in the company has access to the information they need, and no one is the sole source of any information that might be needed to address our client’s issues. We are also starting to use video more, but as anyone who has seen me can attest, this is not necessarily a good thing (grin).
Targets: You can’t run any company without targets, especially when your goal is to provide the world’s de facto network management platform and your opponents are IBM, HP, CA and BMC. We set deadlines, and although we don’t always meet them we always seem to work better and more cohesively when they approach. When your team is separated, it is important that they all know what the immediate goal is so they know what to work on and feel that the work they are doing is useful and important.
Temperament: One last piece to the puzzle of running a successful distributed company is finding people who can work well outside of the traditional office environment. Social scientists often talk about the concept of a “Third Place” meaning a place to gather outside of home and work. But what if home and work are the same place? There are a number of people who do not work well in isolation. The work/life balance becomes harder to maintain. When I started working with OpenNMS I actually had to set up a room in my house devoted just to work. Otherwise I found myself working all of the time and workplace issues started to bleed over into my personal life. With the growing availability of Internet access in a number of public places, it is becoming easier to find a place to work that removes that sense of isolation that can arise from working from home.
No matter how well your team works when apart, it is still important to get together once in awhile (we aim for once a month). I can tell in myself and amongst my team that prolonged periods of working without real world social interaction causes the bad parts of the job to seem worse than they really are, and the good parts less good. Even if it is just sitting together in a room working and listening to music from AirTunes, optimism and pride in what we are doing is just easier to spread that way.
Which is one of the reasons I travel so much – to spread the love (grin). I am really looking forward to meeting OpenNMS fans in Frankfurt this week as there is nothing that can replace meeting face to face. It is one way to build the community which is so important to success. I’ll be sure to post more as the week unfolds.