The world is getting smaller and it’s easier than ever to hire people from other countries. Websites like oDesk make it easy to find developers, Skype and email make it inexpensive to communicate and PayPal makes it convenient to pay them. So, what could go wrong? Unfortunately, a lot.
It would be easy to think that this article, being written by a domestic web development company, is just a lame attempt to discredit offshore developers since we can’t compete with them on price. I actually don’t think there’s anything wrong with offshore development, it’s just important to understand the potential pitfalls before engaging in it. If you are someone who has the experience to overcome these pitfalls, then offshoring may be for you. If not, you might be better off with a domestic development company. You might pay more but some times you do get what you pay for.
I would estimate that 25% of the jobs we get these days are from people who have tried to offshore their project, had problems and came to us to see if we could fix them. Here are the issues they report.
- Time Zones. Developers in Eastern Europe and Asia are literally on the other side of the world which means they are typically sleeping during our business day. In order to communicate with them, you need to stay up late to catch them at the beginning of their day or get up early to catch them at the end of their day. In either case, you will rarely be awake in the middle of their day so if they run into problems or have questions, you’ll lose up to a day of productivity. This happens quite frequently in development projects so offshore projects usually take longer than expected.
- Cultural Differences. US culture places a high premium on execution, deadlines and keeping commitments. This is not true of all cultures. Some cultures place a higher premium on being pleasant, non-confrontational and saving face. As a result, they can be afraid to tell you that something can’t be done or to ask a question that might make them appear to be lacking the knowledge or expertise you are seeking. This is a recipe for disaster because at first you will think you are getting everything you want until you find out that due to the lack of asking good questions or telling you something can’t easily be done, you will get a project that is not what you expected, is over-complicated and is often incomplete.
- Language Barriers. Out of a desire to obtain work and also to save face, offshore developers will frequently overestimate their command of the English language. The result is that you end up getting something that you didn’t want and/or you spend far too much time explaining and re-explaining yourself in an attempt to correct their constant misunderstandings.
- Bidding Problems. The problems I discussed in the article Why Web Development Projects Fail, are at least as applicable to offshore development as they are to domestic development projects. In some ways, offshore projects are even more problematic because not only are the developers typically inexperienced in bidding projects, they are also eager to please and to get work in a highly competitive marketplace so they are more likely to underbid.
- Lack of Control or Recourse. What do you do if an offshore company stops development, stops answering your emails or calls and won’t give you the code that they had developed up to that point? That just happened to a company that called us for help. Answer: not much. There is not much that you CAN do. In the U.S., you could have your attorney write a letter, you could sue them or report them to the BBB. If they are local, you can walk down to their office and give them a piece of your mind. Virtually none of these options are viable with an offshore company. It can make you pretty vulnerable.
I’m not against offshore development, but it’s definitely not for everyone. If you can solve the problems above, you may be able to realize the promise of offshoring – cost savings.