Outsourcing: Tools and tips for cross-culture harmony
Having worked with a number of remote development teams over the last few years, I’ve learnt a couple of things. 
Here’s the insights:
Employ processes that work for you. Everything will work a lot better if everyone is on the same page – with the same expectations. Having solid processes (be it ‘agile’ or whatever works best for your team) can be a lifesaver, especially around stressful times like releases when you don’t want to be thinking about how to administer the project, you just want to be thinking about all the individual tasks that need to be finalised!
Get into a routine and stick to it. If it doesn’t work, make small changes every few days/weeks until you get it right. Making radical process changes can be very confusing, so take baby steps and get everyone’s input and agreement before implementing the changes.
Use your tools effectively. There’s loads of ways to communicate with your remote teams without investing in huge overheads. I find that (like with processes) it’s best to stick to a few tools and use them effectively.
My favourites are:
- Skype – This is the best replacement for face to face that I’ve found. I use this for our daily scrums/huddles or any other chit-chat that would usually occur F2F. Call costs are cheap, though we stick mostly with chat (so we have records of our conversations).
- Jira – Issue management tools are a must! It forces you to put in place a workflow – just make sure everyone is aware of the process (ie. who to assign tasks to, what is a bug versus an improvement etc). Jira starer licenses are only $10 so it’s worth a try! If you’re into agile, it’s worthwhile checking out Greenhopper while you’re there.
- Confluence – This is like a wiki, and it’s handy for text/documents. For me, it’s where documents go to die, but it’s useful for record keeping. For example, we put all our test cases thereĀ so it’s easy for everyone to access (and yes, we could use google docs or similar, but I found it too confusing – it was better to have a dedicate space). Starter licenses are also available for $10.
- Email – This is really one of the last resorts for communication. It’s too clumsy and things get lost. Plus, a lot of people don’t effectively manage their Inbox (eg. ‘Inbox Zero‘), so it can just turn into a hairy mess! That said, it is of course an essential communication tool – but just make sure everyone uses it in the same way (eg. if you’re using a bug tracking tool, make sure you don’t report bugs via email – it confuses everyone and it’s just likely that the issue will not get fixed!).
- Phone - What else are you meant to do when skype fails?
- Text – Have a text policy (or at least acknowledge an agreed protocol). Use text sparingly for blockers only eg. the site is down. Reserve it for the really important issues and you’ll find you get a much better response!
Embrace the cultural. Often working with an outsourced team means working with another culture – one which may or may not be similar to your own. Without harping on about it too much (I’m a student of sociology, so I could rattle on about this forever… buy me a drink and I’ll talk your ear off about this topic!), there are a few basic things to watch for:
- Respect the local age/gender roles – some countries have very strict rules about this and it can impact the structure of your team
- Be mindful of the local festivals and holidays and try not to schedule your major releases around these times if at all possible
- Be aware of the politeness rules that many cultures adopt (eg. always saying ‘yes’ to a superior)
- Be aware of the company’s hierarchy when dealing with conflict resolution / HR issues
Play nice. Without having ever met face to face, and with only a handful of skype calls each week, it’s easy to forget that it’s real people, not magical freaking pixies, who are completing tasks. Treat outsourced developers as you would your in-house developers, invest some time in small talk, say ‘hi’ once in a while and (without being too naff) make sure they know ‘you’ are a real person’. It makes late night releases and problem solving a whole lot easier if you understand the personalities you’re working with!
Tip: Fusion food is tricky and knowing which spices work well together is an art. Does szechuan and fennel work together? How about turmeric and oregano? It’s worth a try, but always be sure to taste it before you serve it to your loved ones.
