That’s What He Said

“Are you not sure you don’t wish to cancel?” – The Problem With Offshore Development

Posted in Technology by wolfsbayne on June 3, 2008

Really? Is this a prompt or an easter egg riddle in this app?

I often share the story about the image above. This image is a replication of a dialog box within a software application that was developed by a team of Russian offshore developers. On this side of the pond, our internal team joked about this for weeks. Our foreign friends, initially embarrassed by the garble, came to find humor in the statement once the primary English speaking guy on their team explained it to his comrades. I always wondered what a user would’ve done if presented with this dialog box…

These days, offshore development is ubiquitous in our American development culture. However, there are still many companies that haven’t participated in the fun. Over the years, I’ve engaged several different outsourcing firms, ranging from the Orient thru Eastern Europe. The experiences were as varied as the firms’ locales. As the image above exhibits, sometimes foreign developers don’t understand the English language, and I’m talking about basics, not nuance, or context. Although, context does present problems once you get offshore devs who do understand basic Engrish (sorry, couldn’t resist).

When shopping for an offshore firm there are a few things to consider.

  • The strength of the offshore firm, financially
  • Does the company have a North American presence?
  • Verifiable references with known or trustworthy American companies
  • What’s the size of the firm/no. of employees?
  • Does the firm have experience with projects that are similar to yours? Platforms, software languages AND methodologies (RUP, Agile, etc).
  • Do the employees speak English? Can they read and respond in writing in English?

So, those are obvious questions, right? Here are the gotchas, geeks.

Initially, you’re likely going to be pitched by a salesperson for the firm, or “business development manager”. Don’t believe anything you hear unless it can be demonstrated to your satisfaction. Remember, you’re dealing with ppl who are from a different part of the planet and that means they likely don’t share your values. I don’t bring this up to encourage your inner xenophobe to fully awaken, only partially.

Many companies will likely try to sell you on a senior resource to manage the project. Some will try to insistnyet, ain\'t my vodka yo that the senior resource work with you onsite, at a higher rate, of course. This can eliminate some of the timezone issues since this person will usually work with the offshore team while you’re asleep AND work with you and your team while you’re awake, hopefully. If your budget allows, and the senior resource is an effective communicator, use him/her. The ticks and mannerisms of foreign developers are sometimes hard to get used to, but you just might learn something about the larger world in which we live without having to travel. For instance, you might learn that there’s zero lane discipline in India. I also found out everything I ever wanted to know about Vodka from my ruskie offshore friends.

What if you opt for nixing the onsite resource? That brings up a few things you’ll have to consider. Someone from your team will have to work when the offshore team is working, or you’ll have to convince the firm that if they want your business their team will have to shift their schedule to overlap with your team’s work hours. So, you might ask, “Why would anyone have to change their hours? Why not just email each other?”. I’m literally LOL writing this as I remember the 15 minute task that took 3 days due to the ineffectiveness of email in this scenario:

Offshore dev sends email to onsite team member asking a question, team member gets the email 8 hours later when he gets in to work. Team member responds and offshore dev gets email 8 hours later. Offshore dev still doesn’t understand so he sends a follow-up question, or as the Indians say, in this case, “he has a doubt” (another contextual thing that to them means “point of clarification” but, to us, a doubt means something negative)…

This back and forth took 3 days! Once I found out these inefficiencies were occurring so frequently, I convinced the offshore firm to have their devs overlap their work day with ours for at least 4 hours a day. After this schedule change, the development throughput increased sharply.

Always monitor the performance of the offshore firm, and if you’re not happy, voice your concerns to the business side of the house, not the individual offshore dev(s). This will nip the problem much quicker. Anytime someone up the ladder is aware of any trouble, the lower rung folks become, ahem, more “aware”.

As always, when making a decision to choose an offshore firm, caveat emptor. Happy offshoring!