Slashdot Mirror


What Is the Best Way To Build a Virtual Team?

stoolpigeon writes "The department I work in is growing and including new members that live quite far apart. Right now most people are in the same office but new members are in Singapore and South Africa, with more coming from other places. I would be interested in Slashdotters' recommendations for software, practices, services and anything else that can help build strong virtual teams."

13 of 175 comments (clear)

  1. Keeping in touch plenty! by Stooshie · · Score: 3, Interesting

    Try to have a quick team meeting meeting every day on Skype/VOIP, if possible. People can start to stray "off message" if left to themselves too long (not through laziness, or anything). If they are in the same office, that can is normally regulated.

    Lots of small targets as well as an overall project target.

    Do try to have face to face meetings occasionally.

    --
    America, Home of the Brave. ... .and the Squaw.
    1. Re:Keeping in touch plenty! by Malc · · Score: 3, Informative

      As somebody who's been doing this for over a decade, let me emphasise the importance of this. You will need a good travel budget, and you will need to be willing to make sacrifices in your personal life, in addition to ensuring other good and regular communication commitments.

      I've just got off our weekly engineering call that went for the last two hours (10pm California, 6am London and 1pm Shanghai). Yawn. Somebody always gets the arsehole timeslot with this many timezones. We've managed to keep it down to one of these a week, with some extra duplicated two time zone meetings in between. Any less and things noticeably fall between the cracks quickly.

    2. Re:Keeping in touch plenty! by pauljlucas · · Score: 2

      I've just got off our weekly engineering call that went for the last two hours...

      I also happen to be part of a geographically dispersed team that has weekly conference calls via Skype. IMHO (and a few others'), the calls are largely a waste of time. I know what my job is. I can work independently. For everything else, e-mail is just fine.

      For most of the call, I'm actually doing real work in another window and pretty much ignore the call because it's about talking about other aspects of the project that don't involve me. I have to respond only when I hear my name and then it's usually to give status that's just a repeat of what I've already sent in e-mail.

      The only thing I find the call useful for is to get answers from people who didn't respond to e-mail I sent. IMHO, I shouldn't have to do that.

      BTW: don't some very famous, large, geographically dispersed software projects get along just fine without weekly conference calls? Apache, GCC, and Linux come to mind.

      --
      If you reply, do so only to what I explicitly wrote. If I didn't write it, don't assume or infer it.
    3. Re:Keeping in touch plenty! by pclminion · · Score: 2

      I'm a little confused how you can just sit there not paying attention and that doesn't have any negative consequences. To me, that indicates that the wrong people are on the call. If everybody on the call doesn't have something to contribute to each part of the discussion, then what you've done is taken what is actually two or more teams and glued them together to make a "team" that's not really a team. Now you are mutually wasting everybody's time.

      Using email instead of speaking with your voice is also a cop-out, because it allows you to intimidate people by the sheer volume of what you write. Face to face, a person can call your bullshit a lot sooner by interrupting you to either redirect you, ask a question, or what not. Email may feel efficient because it allows you to avoid the irritating problem of dealing with people, but if dealing with people is irritating then you aren't going to be able to construct a team since a team is about dealing with people.

      Your post comes across as saying "I don't need to participate. This is a waste of my time. I'm too important, too cool for this." That may not be entirely your fault, because some idiot has constructed the team improperly, but on a functioning team there's no such thing as "That doesn't concern me." Maybe you don't have any specific input but you should be LISTENING.

      Maybe I've just been blessed to work on better teams than you have, but your post comes off sounding egotistical to me.

  2. My 2 cents... by LordNacho · · Score: 2

    So, there's two categories of things you need. You need equipment/services to make it possible. And you need to create a sense of "team" among the members, which is harder to do when you're not in the same room.

    Stuff:
    -campfirenow.com. A web-chat for multiple users, where you can see what you missed while you weren't logged in.-
    -Webcams. There's still such a thing as body language.
    -Project management software. We use fogbugz to track dev projects. Whatever you industry is, you might want something similar, because you can't just lean over and explain the issues to your team members. Also, it's good to have a record of issues so you don't forget.
    -Various kinds of shared desktop software. You'll want to be able to show people things, instead of just typing out descriptions.
    -Extra desks. We have extra desks for team members who work from home. If they come in, they won't be homeless, sitting on a tripod, and working on a 10 year old machine.

    Teambuilding:
    -Try to meet for socials now and again, wherever you are in the world. Paintball/Steak/Strippers, depends on what people want to do, but don't skimp on money. You don't want people to feel like they're just sitting in front of their computer taking orders from a web page.
    -Sometimes, you'll need people to actually work together. Looming deadlines and important launches will benefit from flying people in to work face-to-face.
    -Generally, the more life-like contact, the better. I've seen offices where remote users were on webcam, able to join in the banter.

  3. Re:IRC by Skuto · · Score: 4, Insightful

    Seconded. IRC works great for group discussions. Most IRC software is also very customizable in what messages should cause it to pop up or alter you, so you can continue working concentrated when needed. You can easily move from group discussion to 1-on-1 or seperate chats if needed.

    You can also leave an IRC client running and see discussions that happened when you were away/asleep, which is nice if there are timezone differences.

    I've used Jabber on a previous job, because this was supposedly more secure, but I don't think there's any advantage over IRC+SSL.

    Skype doesn't work as well in my experience, as it's less customizable. During the working day, I want to have my colleagues able to interrupt me, but not my friends. Separate accounts isn't really a good solution for that. Maybe there's add-ons for that?

  4. use git or mercurial by ccabanne · · Score: 2

    Well, first use git or mercurial. Then set up an in person meeting of the team at least once at the beginning of the project. A lecturer at UCLA told me that projects are 70% more likely to succeed if people meet face to face once. I don't have a link to the original research that claims this, though.

  5. Communicate. And not just about work! by Anonymous Coward · · Score: 2, Informative

    I am in the UK, and work with a team in Finland, India, Czech Republic, Germany, Lithuania and Sweden... I work with no-one else in the UK. Communicating regularly and often around work topics is a given, both in group meetings and just by following up with IM or a quick call. I make the assumption that you have an appropriate toolkit, such as Office Communicator / Lync, and LiveMeeting or whatever you prefer, but you need something to chat, speak, video call and conference with.

    The real challenge is really getting to know someone virtually: by that I mean not just what they do, and what their work strengths and weaknesses are, but also what they enjoy away from work and what their personal situation is. This is the sort of stuff that gets discussed at lunch, making a drink, or whatever, that simply doesn't often get considered when working virtually.

    It's difficult because you can't force it, but on the other hand it does pay dividends as you actually do end up building a real camaraderie. I end up just chatting on IM with colleagues to see if they had an interesting weekend, and take it from there.

    I also like to be reminded of where the team is, and in what timezone, and what they look like: I have a world map printed on my wall with photos of the team pinned to it. (Well, a powerpoint slide printed!). It helps cement someone in your mind, I find.

    One thing that helped put the icing on the cake is a one-off, physical meeting. Yes, this is expensive, and yet it takes a week out of everyone's schedule practically, but the value in building relationships with colleagues and making friends of colleagues really cannot be over-stated.

    Another potential communication issue worth considering is that native English speakers tend to speak fast, and use odd colloquialisms from time to time. Recognise this, slow down, and explain colloquialisms: you'll find non-native English speaking colleagues greatly appreciate this, and will often start a chat to question word use, constructions, sayings, colloquialisms or whatever which is a great way to build a better relationship, too. It's also fascinating to find the literal translations in many languages as the expression for 'you're pulling my leg' in Russian translates to English as literally 'you are hanging noodles off my ears'.

    Most of all, have fun, and built a relationship of trust.

  6. Treems - tiny groups, highly linked, with extras by Peter+(Professor)+Fo · · Score: 2
    I have researched this. The answer is at http://vulpeculox.net/treems
    • Limited bandwidth makes it better to get to know a few people really well
    • Management oversight is more difficult so build mini-team responsibility and development and ownership of objectives
    • Make sure people are in the part of the organisation that suits them (see link above).
    • Provide separate communication protocols for gripes and discussions as opposed to getting the job done. (You need a 'grumblee' to be a lightning conductor for things that might get worked out in physical corridors.)

    When you're remote everyone needs to feel valuable, cared for by the organisation and spared annoyances.

  7. Patience, language, and other tips by zevans · · Score: 5, Insightful

    1. UK ENGLISH IS NOT INTERNATIONAL ENGLISH. AMERICAN ENGLISH IS NOT INTERNATIONAL ENGLISH.

    Avoid slang and colloquialisms if anyone new is in the conversation. Think HARD about what might be slang or idiom. Be particularly careful to avoid phrases where the meaning is the opposite of the individual words.

    Learn what "mistakes" are common in speakers from particular countries and learn how to go around them. Often non-native speakers will use academically correct English which sounds imperative and aggressive to idiomatic speakers. e.g. "I'll have John look at that" is perfectly natural American English but sounds imperialist even to English English speakers. I've noticed Indian staff often do the opposite and what should be "you must, otherwise this project is doomed" becomes "if you don't mind when you can get around to it if it's not too much trouble."

    2. Remember cultural references are not universal, despite Coca-Cola Co's best efforts. Watch out for this when drawing analogies, especially with TV shows, social situations, and personal money.

    3. Be patient. It's not anyone's fault that you were born 9000 miles apart. If a communication doesn't make sense or seems offensive on first sight, check.

    4. Quick phone meeting every day is essential. Try and find a slot that isn't the end of day for anyone (can be tough to do that depending what timezones are involved.) And I do mean quick - 15 mins - and have a tight agenda e.g. "UK hotspot/news, India hotspot news, Singapore hotspot/news." Be careful about what "today" and "tomorrow" means in practice. "End of tomorrow" is probably "first thing the day after tomorrow" for someone on the call.

    5. Unified Comms is great if used properly, but do remember it's not face to face conversation and works on different assumptions. Instant messaging is particularly dangerous because written English and spoken English do not operate on the same set of assumptions; but in IM it's tempting to mix it up. I ran two similar projects in a bank two years apart; the second time, we had Office Communicator and it made the whole thing a HELL of a lot easier. I was astounded by how useful it was.

    6. In a virtual team, it's very likely that not everyone in the team will be in the team full-time. Be aware of that and don't assume that "four hours work" means that it will be done the same afternoon. Ask.

    7. Notice how far down this list technology is...

    --
    "... and more and more now there are all kinds of electronic goodies available" -- Pink Floyd 1972
  8. Virtual teams are hard but rewarding by zgrossbart · · Score: 2

    I've worked in a virtual team for over 10 years and the short answer is that making it work takes work. Most engineers are solitary and it takes a lot of communication to keep a virtual team together. I wrote a book about it. The One Minute Commute. It is available free.

  9. 10 suggestions: For what it's worth by Compaqt · · Score: 5, Insightful

    1. Blog your progress. Whatever you did today, blog it. Let people know what you did that worked, or what was faster (Nginx vs. Apache), or what wasn't (ColdFusion?). Don't reinvent the wheel, use WordPress, regardless of whether you like PHP/MySQL or not.

    2. Use a subscription/payment management company. You're just a small group of nerds, not accounts receivable clerks. Fastspring, Plimus are free; Chargify, Subsify, Cheddar Getter, BrainTree, Spreedly charge; and Zuora is expensive.

    3. Use Google Docs and Slideshare to share documents.

    4. Chat. Don't just rely on email. Emails can often read like "this way or the highway". Be collaborative. You can often accomplish more with 15-30min collaboratively as opposed to composing and responding to long emails. Skype, Jabber, SIP

    5. Take notes on what you did. Made a server configuration or a setting change in your CMS, your compiler, or whatever? Copy and paste from xterm so you don't have to guess about those commandline switches next time. Take screenshots and make them available to others. Zim, Projly, DokuWiki.

    6. Have a phone numbers. If not bog-standard landline phones, take advantage of Google Voice and SkypeOut and SkypeIn (people can call your Skype line on a normal phone number). I realize Google Voice might not be available in South Africa yet.

    7. Someone mentioned version control. Use git if you're a cool kid. Or svn if you're old and busted. Read the RedBean book. I've had success in having non-tech colleagues using graphical clients like TortoiseSVN (integrates into Windows Explorer).

    8. Write tests. Any member of your team, sitting anyplace, should be able to push a button and run all your tests. Tests document how you're supposed to use a given method, class, etc., especially valuable when you're so far flung. Use JUnit, PHPUnit, FooUnit for your language. Write the tests before you develop, and you're doing Test Driven Development.

    9. If you're writing tests, that implies loose coupling, which might require dependency injection. Can be difficult to climb that mountain, but it's worth it when you can just run a test and be sure your project works.

    10. Development processes: Scrum, Extreme Programming. UML lets you communicate graphically about objects.

    --
    I'm not a lawyer, but I play one on the Internet. Blog
  10. Get Webcams by davecotter · · Score: 3, Interesting

    make sure y'all have webcams and the software to show the video wall of all connected users. i work remotely myself, and i can't tell you how much more PRESENT i feel at meetings when i can see the participants in the office meeting room, plus any other remote users. Just being able to see who's talking helps in a way that's difficult to describe, everyone will definitely notice the difference.