PhpRiot
News Archive
PhpRiot Newsletter
Your Email Address:

More information

The basics of having successful remote team members

Note: This article was originally published at Planet PHP on 30 August 2011.
Planet PHP

aoSo how did you find a job with Sugar?a

This is one of the first set of questions that always comes out when people ask me about what I do (alongside aoWhat's SugarCRM?a, aoWhat is CRM?a, andAaWhere's Ohio?a). I can actually see how this is a pretty relevant question; SugarCRM has no presence in Ohio other than me (although now just recently another fellow just joined us). And it's not like SugarCRM was doing some sort of hiring campaign in Ohio at the time; heck, Northeast Ohio isn't exactly what I'd call a aotech hotbeda. So how did I end up here. Let me tell a bit of the story.

It was the fall of 2007, right before gas prices shot up and the economy tanked. I had been working for a small,AfinancialAservices company for a number of years, looking for something new to do. Becoming more involved with the PHP community, I saw a post by Travis Swicegood that SugarCRM was hiring Engineers. I sent him over a resume that day, and within a few days my interview parade began.

When I say interview parade, I do mean parade. Lots of phone interviews, two coding assignments, and a trip out to the SugarCRM HQ with a day full of interviews with even more people, all over the course of 3 months. While many people gasp at the lengthly interview process, I look back at it and realize to an extent it made sense. Hiring someone that won't be working in the same physical space as you can seem like a bit of risk if you aren't used to doing so. While many parts of the organization had remote employees or were completely virtualized, it was somewhat new to this team with at the time just two remote team members (one of which was originally non-remote for quite sometime).ABut ideally hiring remote shouldn't be a risk, provided you have the infrastructure to support it.

So what is that infrastructure? Here's a few things I find to be essential parts of it:

  • Excellent communication channels. Having everyone on instantAmessaging is becoming more and more common these days as a replacement for the desk phone. If you are supporting remote team members this becomes a requirement, as it is really the primary way to keep in touch with your teammates. It's also helpful for remote team members to help establish aoavailablea and aonot availablea times, as you can indicate an unavailable status when you are in a meeting, getting some aoheads downa work done, eating dinner, having family time, or sleeping. However, don't restrict yourself to just IM, as being able to talk to people is also aAnecessity (if for nothing else but your own sanity, as being remote can get lonely and sometimes you need to talk to someone). Make sure everyone has access to each other Skype or some other VOIP tool for team meetings or if you just need to talk something out.
  • Collaboration tools. This extends the communication channels above, but give you a better way to have planning and brainstorming sessions. Think WebEx or Gotomeeting here as starters, but even more specialized group whiteboard or pair programming tools could also prove valuable.
  • Mentorship program. While this may be consider more of a aonice to havea for organizations where everyone is under one roof, it is absolutely essential to have if you have remote team members. Remote folks are expected to be self starters and not need much handholding in general, but they need that person they can plug into to help learn the ropes of the organization. I'm thinking this doesn'tAnecessarilyAneed to be a manager, but perhaps a team lead or another senior team member. And this mentorship program shouldn't have a finite end, but at the same time shouldn't be the only way a remote team member interacts with an organization. There should a bond between the mentor and the aomenteea that is continous, with the goal to foster the growth of more bonds into the organization. And this should be just as much for professional and well as social reasons; if the folks in the office are having a team lunch, the remote folks should be able to go have a aolunch on the companya for example. This where the mentor should stay on top of to make sure that even though the remote team member may be 1000 or more miles away, they feel like they are sitting in the next desk over
  • Regular Face to Face time. The whole team should schedule regular times where everyone can get together, on whatever interval makes sense. I think once a quarter is a pretty good sweet spot, as it's not too often to be burdensome, but not too infrequent as to make the team feel disconnected. This is a great time for long-term planning meetings, code s

Truncated by Planet PHP, read more at the original (another 2839 bytes)