Making Remote Work Work: an Adventure in Time and Space

MongoHQ is a distributed company, with 21 employees scattered across California, Alabama, Utah, Windsor Ontario, Quebec, and London. This isn’t rare, by any means, and is becoming more common as technology corporations evolve … particularly when they realize that the intersection of the entire population of good hackers and the area that’s reasonably accessible to their office looks something like this:

Good Hacker intersection with office area

Most posts like this talk a lot about the tools, which is understandable because they’re so much fun to futz around with. At their best, though, tools that help with distributed teams are an extension of a remote friendly workplace, and getting to that is *hard*. We’re probably 80% of the way there, and with enough diligence will be 82% of the way there by the end of this year.

Working well remotely takes practice

We’ve started asking about remote work experience and skills very early in a promising interview cycle. We expect a lot from people, and the “remote requirement” just adds another dimension of difficulty to their jobs. The normal response, particularly from people who’ve been physically present at offices all their lives, is a bit nonchalant. They assume that “remote work” means “I can spend a lot of time skiing and work from the lodge”.

Steve somewhere exotic, and snowy

So that’s true, kind of, as evidenced by Steve up there. He does go skiing a lot and has been known to work from the lodge. He also, when not skiing, starts his days roughly 6 hours later than a normal Londoner to make sure he’s around to talk to people on the superior American time zones (except Pacific time, Pacific time is awful).

What they don’t always think about, though, is the inherent firewall a commute creates between “work” and “personal life”. Working out of a home office opens up an entire world of surprisingly difficult-to-handle distractions, particularly for those of us with families. It’s easy to avoid a guitar wielding toddler when the office is 5 miles away and he has no driver’s license. It’s harder when the wall between the living room and the office makes a delightful banging noise when struck with a guitar.

Everyone works remotely, even from an office

If you did the math, you noticed we have about four times as many people as we do locations. MongoHQ has offices in both San Mateo, CA (about 15 miles south of San Francisco) and Birmingham, AL. Having centralized offices can wreck a budding remote friendly culture. Working in a way that’s inclusive of people who aren’t physically (or even temporally) present is not entirely natural, and excluding remote employees from important interactions is a quick path to agony.

Watercooler gossip

We’ve experienced some variant of this problem every time a new hire has joined in one of our offices, and are now very explicit about the “work as if you’re not here” standard. We expect everyone to work with the remote collaboration tools, be available via the same channels, and produce written artifacts of interactions that are important to share. This is a tough requirement to stick to. We’ve encountered people who function very well in an office environment, but can’t seem to function remotely.

Hypersensitivity to “the feels”

Like most deceptively simple ideas, remote work is easy and amazing when everything is going well. If your company is killing it, all the hockey sticks point up, and everyone gets along amazingly well, the remote work culture is probably good. There is danger, however, when things go south. We’ve experienced the emotional troughs as a company, and had individuals fight their own personal battles.

The reality of a remote workplace is that the connections are largely artificial constructs. People can be very, very isolated. A person’s default behavior when they go into a funk is to avoid seeking out interactions, which is effectively the same as actively withdrawing in a remote work environment. It takes a tremendous effort to get on video chats, use our text based communication tools, or even call someone during a dark time.

We’re learning how to interpret the emotional state of people we only rarely see, and started working to deliberately draw people out of isolation with company wide video events. We’ve even tried recording bits of these events (a recent one had a series of lightning talks) and sharing them around afterward in an effort to get face time, even if just one way. This is a hard problem, though, and there’s really very little we can do about it other than notice that it’s happening.

The practical (and the tools!)

In general, a distributed team is a series of communication problems. We tackle this in two general ways. First, we favor async communication when possible:

  • We have a central “work tool” (it’s home grown, we call it Compose) we use to record what we’re producing each day. Anyone who wants to know what someone is up to, or what’s been accomplished on project X, can find out here … assuming everyone’s doing their job.
  • Most day to day communication happens in Hipchat, with some work happening in project specific rooms. It’s reasonably easy to catch up on a day or two of activity most of the time.
  • When we do have meetings (this is a whole post by itself), we like to have pre-reads available on a Wiki. These get updated with useful information as the meeting progresses, with the goal of making the actual meetings optional. We use Hackpad for this, mostly, but have also used Confluence and Github’s wikis.
  • Email is a bit of a beast, but we do have “open” mailing lists and try to include those on most email communications. The caveat is “try”, though, we haven’t been completely successful in building good company email habits.

We also encourage face time:

  • Sqwiggle is really good for this, and there are anywhere from 3 to 10 people on our Sqwiggle setup at any given time. Sqwiggle takes a picture of whoever’s on every so often, and gets bonus points for helping us record peoples’ embarrassing poses for posterity:
  • Google Hangouts come in handy for scheduled events. We used to have a perpetual Hangout on wall mounted televisions in both offices, but that created a sort of audience / presenter vibe that was a little odd.
  • We have a Double Robotics robot in each office. Remote employees can “drop in”, drive around, and even pull off low level pranks.
  • Does real estate count as a tool? We have an apartment near our San Mateo office that anyone can use when they’re in town. People tend to travel to San Mateo about once every 6 weeks on average.

It’s a process

If you are trying to build a remote friendly culture, the best advice we have for you is “just keep iterating”. It’s not an easy thing to do, but it’s an amazing capability for a company to have. Our continued attempts to do it well have resulted in some phenomenal people joining we never would have met otherwise. We’ve mostly been able to get this far by powering through the tough stuff, committing to un-natural but valuable habits, and learning from other companies who are trying to do similar.

  • Eduardo Silva

    how do you handle salaries when people have different live costs and face different taxes ?, and how that changes when moving from one country to another ?

    • suls

      that’s exactly what i am wondering as well. remote-worker within the us seems to be a no-brainer, but how about those who live in europe? do you setup a new company in the given country to avoid going through the us-visa process?

      • mongohq

        Our European guys actually have their own company entities we treat as vendors. I’m not positive if they set them up themselves, or use a service though.


    • mongohq

      Salaries are pretty consistent, with *somewhat* standard cost of living adjustments. We don’t have a precise salary formula yet, although I’d like to.

      – Kurt

    • navg

      The tax side should actually be somewhat easy – provided the employee is in the US. Most payroll providers are able to parse out the different state tax laws and withhold the appropriate taxes when you do taxes.

  • Joe Altmaier

    Sounds like our tool, Sococo, is on the right track. It allows extended presence info (who’s talking with whom; who’s sharing video or docs; has the meeting started yet) so remote folks can be clued in. We (Sococo) are in multiple sites too, so we’ve faced all the same issues.
    The worst problem is physical meetings at the ‘home office’. They all get in a room and talk, and everybody outside has only a poor desk mic to try and distinguish all those voices. If they were all at their desks, Sococo would show who’s talking and the superior headset mics would pick everyone up equally.

    • Nashenas

      Now if only Sococo could solve its random crashes on Windows and HORRIBLE memory issues in Mac :). Great idea, but not a good implementation.

    • mongohq

      We’ve had perpetual hangouts in common areas going at times, with nice noise canceling, speakerphone mics. It did let people drop in and “be here”. The robots seem to be a better way of doing that though.


  • Jose

    “It takes a tremen­dous effort to get on video chats, use our text based
    com­mu­ni­ca­tion tools, or even call some­one dur­ing a dark time.”

    That is your fault. You need to create routines for communications and reporting problems… Human beings are routine machines. It should not take more effort that showering each day or stay 30 minutes in a traffic jam. People do that without effort because they don’t think it, it is routine.

    It is as simple as 5 minutes communication each day. At one specific time. Every day.

    • mongohq

      I think that’s a pretty tremendous effort, to be honest, particularly with people on almost opposite time zones. The effort goes into building the routine!


  • Ernest Semerda

    Remote work works great in the early days when everyone has their head buried deep in code and most of the team is scattered around the globe. But let’s not forget how we homosapiens evolved – via collaborative face to face group interaction. It’s like Facebook wont replace the real human touch component of building friendships and staying connected. Remote work will not be the shape of work to come.

    When the team starts to expand you need human interaction. People need to engage in debates, intense debates that spark creativity and get to feel the energy in the room. That energy is the driving force which aligns everyone for the same common mission. Quarterly team assemblies are always great, as we revive the power of being in touch on a human level. Not 1s and 0s.

    Cloud tools are great to exchange information but not to grow a company, culture and keep the fire fueled for a very long time. There are exceptions (outliers) but let’s not use those since we know that to draw conclusions from data we need statistically significant sample of data.

    Saying this, work environments are changing and need to change to allow a piece of isolation (just like meditation provides) and a piece of connection (that human component). All wrapped up in a flexible schedule so employees do not feel like prisoners.

  • jdokulil

    What do you do about tax nexus? My company supports remote employees but it’s a challenge adding new states to the list, because once we have a single employee in that state we suddenly have to deal with the high costs associated with nexus.

    • navg

      Yes – unfortunately employees in different states do create nexuses that makes sales tax a little more complicated than a single location company. Fortunately there are a couple of things that help (and I’m by no means a sales tax expert) – you can check if the specific nexus triggers sales tax for the specific type of business (eg CA doesn’t so sometimes you luck out); next there are specific services like Avalara for eg, that helps with tracking nexuses and calculating and filing sales taxes. The best thing to do in this case is to get a sales tax expert to advise you…hopefully the positives of being able to pull talent from anywhere outweigh the the overhead of tracking sales tax on nexuses

  • Dieter Engel

    Sqwig­gle is super creepy. Half the benefit of remote work is being able to work in privacy, without being interrupted, or distracted randomly like you are in an office. Hopefully it’s optional, because if it’s mandatory, I think you’d lose the best engineers.

    PS, the word “hacker” has become like “ninja”. A word that almost nobody uses correctly (especially since “Hacker News” which, notably doesn’t seem to have any actual hackers on it, even in the sense that Paul Graham (not a hacker) intends!)

    Software Developer, Software Engineer, and Programmer are all ok terms. Coder is a diminutive. Hacker is becoming like “ninja” or “rockstar”.

    • mongohq

      Sqwiggle is optional at any given time, but it’s one way to be “visible”. If someone’s never on Sqwiggle but interacting on, say, Hipchat, it’s probably fine. You can mark yourself as busy and not get interrupted, at least.

      Hacker’s not *exactly* like Ninja. No one’s ever been an actual Ninja for a startup (I don’t think). Hacker’s been coopted, but I still like it and it’s descriptive.


    • Robbie Mitchell

      Is it really _creepy_? I don’t see Sqwiggle as much different from being in front of people all the time in real life. Remote work and distributed teams save you from having to relocate your life, but that doesn’t need to also mean complete visual isolation. The added friction of having to dial/answer can be more distracting than something that’s always on in the background like Sqwiggle or Perch.

  • Joel

    Hi, Great post.
    I just wanted to share my experience as someone (in Sweden) who’s been without office for about 3,5 years now. I am a software developer in a highly agile team where co-location is the absolute truth, so I call my situation No-Location. My experience is that there is huge difference between occationally working from home and not having an office. It creates new requirements on both the person being no-located and the team. Ill try to bullet down a few things that comes to mind:
    – It will only work for those who are passionate about their work and performance, not for the relaxed performer, since you will have to compensate freedom with an honest “would my boss be impressed by my performance today” feeling. Sometimes working more and on uncomfortable times to make up for slack or disturbances so that you produce more than expected. And its all on you! Dependability is key!
    – It requires reoccuring and periodic meetups since someone wiser once told me that after about 6 weeks distributed teams tend to loose trust in each other. There is nothing absolute about these 6 weeks and if you are constantly communicating and showing performance ou can easily push it. But there is some kind of bonding built up that needs to be maintained, especially towards the less passionate employees. Care for the empathic link to coworkers is key.
    – You have to prove your worth with extra passion. Since you will miss out on those natural meeting points around the coffeepot and those times when you run into someone important or get dragged into a meeting as an expert to share your point of view, you have to constantly and dependably create those contact surfaces on within you team as well as across the corporation. Meaning you have to have the guts to email ideas or make calls to people you really dont know so well, or you will be forgotten about and made expendable. Being proactive is key!
    – You have to teach the rest of the team to be online… always. As you get more flexible you want to make sure the team and your boss is doing the same. Maybe there will be a trend to want to work from home, but this is mostly driven by carpenters renovating, sick kids or similar, and will mostly reduce performance. So you have to take it up on you to make sure they learn to be online and communicate. Home office or No-location is NOT about calm and quiet; its about freedom and responsability. Its ok if they want the carpenters to come or a kid is sick but not if they dont come online, take 3h to answer a chat or dont tell you what to expect Transparancy is really key! And you have to teach everyone else the name of the game.
    – You have to get a more relaxed communication with your team. Since you and everyone else suddenly will be on speed dial, using skype or what not, Its ok to disturb as long as everyone always asks if the other person has time. Therefor rapid answers is really key. “got a min?” -> “sure”/”i call you”/in a meeting” etc. And in a meeting doesnt nolonger mean “no” it means “I cant focus on it but if your brief and clear ill answer if noone is requiring my attention”. Agile communication is key!
    – Share screens, share screen share screens. Voice voice voice. No bloody emails!!! Emails is for pushing out store worthy information that people can read or disregard as they find time to do so, and its a way for many to hide and get peace and quiet by offloading work. In no-location there is no such thing as offloading work if you havent talked to someone and that person has clearly said, I take it. Responsability is key!

    There is probably a load more I could say about this but being a comment.. it is already way to long. :)


  • jasonblum

    Just wanted to share that I haven’t experienced this at all: “Work­ing out of a home office opens up an entire world of sur­pris­ingly difficult-​​to-​​handle dis­trac­tions, par­tic­u­larly for those of us with fam­i­lies.” Working at home is different in exactly the same way as working in a new office is different. I actually find my guitar-wielding toddler to be easier to manage than disruptive colleagues at work, whom I can’t just ask the caregiver to retrieve. Also disagree with this generalization: “The real­ity of a remote work­place is that the con­nec­tions are largely arti­fi­cial con­structs.” Neighboring mods are “real” constructs?

    Enjoyed the post, and particularly the tooling you implied at the top you wouldn’t talk about so much. And glad to see more discussion of remote work. But just wanted to share I have not found remote workers any more or less likely to slack off or be isolated than those who make the commute. If anything, it’s been the other way around.

  • p2pu_dirk

    Do you encourage people to work from co-work spaces and/or to link into local software communities?

  • Sean Macdonald

    great article! i am one of your oldest and most loyal customers. i am a big believer in DaaS, and yours is the best in the MongoDB landscape. It’s nice to see the human face(s) of MongoHQ. It’s nice to see Canada is well represented.

    i much prefer working remotely, and feel that i have way more energy and concentration. i find email and github commit messages to be the only communication tools i need. when i am in the zone, i can turn email off and focus. This is not easy in an office, where project managers seem to drop by alarmingly often.

    Also, I have noticed i can work a 16 hour day and still have energy at home. But 9 hours is my limit at the office, and i come home exhausted. Why is that? Could be the handful of 10 minute naps i get to take at home.

  • Cecilia Briozzo

    I love your post. I’ve been working from home for a few years now and I agree 100% with everything. I do testing and I am constantly comunicating issues/risks/bugs/etc. But this is a one way comunication. The worst is when there is no response on the other side because I can feel that my work is not worthly. I’ve learned to block that feeling, after knowing better the team. I know now that they ussually take my emails in consideration but do not responde to them (God nows why!). When we have our phone meetings I’ve realiced this. It is a learning experience and one has to be very patience and not loose the nerves when comunicating or waiting for the comunication from the other side. I would say that comunication is THE key factor for success. Regards, Cecilia.

  • Amit Sonawane

    Great post, Kurt. Really enjoyed the insights and how you guys handle remote work. Learning about Double Robotics just made my day!