Does Offshoring Really Save Money?

by Robert Dempsey on December 15, 2009

Offshore

The picture above looks so nice doesn’t it? The sun is shining and the water is inviting. It looks like where we want to be. And it might be.

Or perhaps not.

It looks great from here, but what’s under that water?

Shark

You never know until you get in, and therein lies the risk.

Offshoring seems like a great idea. Developers in other countries – India, Brazil, Philippines, Ecuador, Poland – are less expensive than U.S. developers. There’s no debating that. We have a much higher cost of living than many other countries, and need to get paid a certain amount to live. So for managers focused on the bottom line, offshoring can look very tempting. Aha! they think to themselves. I can get three developers for the price of one, and get three times the work done at once!

I kid you not. I’ve heard the arguments, and sat on my hands. I’ve sure you’ve heard these arguments too.

Don’t get me wrong, while I may piss someone off by saying so, the U.S. does not hold the market on smart people. I work with great developers from all over the globe. In fact, part of our internal product development is done by an offshore team. For us it works great. But I’m starting to run into companies that it hasn’t worked out so well. And here’s why.

If you’re going to work with an offshore team you had better be ready for the increase in communication that’s required. In addition, what is that team doing for you? How familiar are they with your business domain? If you’re building a product for the U.S. market, do they understand it enough to offer suggestions and not simply code what they are told to code?

And don’t get me started on how I’m seeing Agile sold to business people who are unfamiliar with software development and are trying to hit (sometimes unrealistic) budgets. I’m going to schedule a webinar for January to ensure that how Scrum works and what’s required to make it work is spelled out in business speak for those in the business community. There is a lot of misinformation out there and it pisses me off.

But I digress and am getting long.

So, the lesson here is that if you are going to offshore, and as a U.S.-based business I would hope that you choose us or another U.S. company if you too are a U.S. company, then do your homework before diving in, and put solid contracts and metrics in place. Then measure, measure, measure. If you’re doing most of the job then the savings might not actually be there. And remember, you don’t know what might be lurking under those calm, blue waters.

Bookmark and Share

Other Posts That Might Interest You

  1. Your Customers Are Part of Your Team
  2. Finding the Right Job is About Knowing Where You Fit
  3. In Today’s Economy, Keep It Close to Home
  • Nice write-up! you bring up an interesting topic. We are now living in a global village and businesses should explore every avenue to improve performance and reduce costs. As part of this drive, many will be considering setting up overseas operations to gain access to new markets, reduce the cost of product development or improve operational efficiency. There are a variety of offshore outsourcing models to choose from. Selecting the right one will depend on your strategic business goals and the type of work to be outsourced, as well as its location. By finding the right structure for your business, you should increase your efficiency and profitability.

    Regards,
    Charlie
  • This is a pertinent post. An interesting and well written article! Offshore services may continue to be associated with conventional concepts such as cost-savings, but if we analyze properly, we can easily see that the applicability of such concepts has witnessed constant erosion over the past few years. One of the main reasons for that has been the growing awareness that ouffshore services are not just a means to reduce operational costs. And that they play a more important role, i.e. acting as a vital link between businesses and their present and potential customers. This becomes evident when we look at recent customer survey results that clearly indicate that around 70% of customers move over to a new product or service if they are dissatisfied with the customer support services offered by their existing product manufacturer or service provider. -Jaime
  • Nice Article because Now a days not only big companies like Adobe, Microsoft are doing software and product development in India at their development center. But now many other small to medium scale companies have started software and product development and started entering into outsourcing software product development. It is considered that, increase in business will be around 100% in offshore outsourcing product development.

    For more information please visit : http://www.elantechnologies.com
  • cydonia16
    I really like this article and I agree that going offshore is not the best easysaver solution. Now more than ever businesses need to focus on growing new ideas from within instead of seeking new environments and cheaper staff.
  • As I mention in tweeter, offshoring (or even outsourcing) for the sake of reducing cost, is a bad idea.

    Outsourcing is an strategic decision to leverage the resource usage. There are many examples of that, and I would probably post something about it.

    Offshoring is outsourcing with the additional issues of communication, cultural differences, time laps, etc. So, to use offshoring you must have strong reasons, far beyond getting a few pennies off the cost.
    So, should I go offshore? Yes, I should if it is strategic to me. Points I would like to consider:
    1. Having local headquarters. Development centers may be abroad, but there is local communication.
    2. Natural Speakers in team
    3. Same time zone, or not more than 3-4 hours.
    4. Capacity to travel quickly, non greater that one day.
    5. Experience, experience. In language, in industry, in methodologies (Agile).
    6. High end developers in team, architects available (yep, many outsourcing companies are just a lot of junior programmers). Add Project management, either your side or outsourced.
    7. Availability to work in Situ if required.
    8. Avoid limiting methodologies (strong CMMi is an example, fixed bid is another one).

    So, good luck with your selection!
  • Marek Kirejczyk
    Finding a good company can be hard both in USA and abroad. You want to find company with skilled developers, that produce good quality code and has a good process.

    Key difference when offshoring is comunication indeed. That is why you should look for the company that focuses on communication. As Paul said native speaker or at someone who spend some time in USA or other english-speaking country is a big advantage.

    Also usage of modern tools, like skype, screen sharing, ticketing system that allows screnshoting and commenting are doing great work for us time and time again in communication :)

    Another is to do meetings with whole team in person at the begining of the project and between key milestones. That helps a lot to communicate better, even understand each other better on skype (sth happens in brain of speakers when they talk in person that gives them better understaning when skyping - scientific fact).

    So yes, offshoring can be risky (even more then working with company form the same country), but it also can give great profit if you make good choice.
  • > If you’re going to work with an offshore team you had better be ready for the increase in communication that’s required. In addition, what is that team doing for you? How familiar are they with your business domain?

    True - I'll add that this applies to outsourcing in general (i.e. also to outsourcing to companies or hiring remote developers in the same country). Offshoring often makes the communication difficult: time difference, language, cultural differences...

    But time difference can also help - less interruptions throughout the day allow me to solve problems on my own. One communication block every day turned out to be just fine.

    Language barrier is the big one. I mean I can communicate swiftly, but my co-worker won't keep up with a fast-pace conversation. This is no problem as we either pair program or he's got a pile of bug reports (which needs little chattering with the client). This issue is amplified by time difference - if you get only one chance to discuss a task with your remote developers, you better have ones with good communication skills.

    As for cultural difference, there are many prejudices... Indian developers don't ask enough questions, Russian and Central European developers have good scientific education but are too much of lone wolfs and don't work well in a team. I do compare myself with other developers of my client, but it's not enough to draw conclusions. I can say though that I wouldn't be a good developer for your "new super-kewl iPhone app", as I don't like the idea of being connected all the time. I work and after that I don't carry applications in my pocket. So in theory I could code such an application for you - but I won't be able to make good informed decisions on my own.

    Measuring performance is a good idea, but it's very difficult to put good metrics in place. I'd recommend though that you hired at least one developer in your own country - if only for comparison. One possible outcome is that you find outsourcing to me doesn't work for you (in which case I should find a team/project where I do bring great value). The other one is that you appreciate my work more. So measuring and comparing is definitely a win-win.
  • In terms of easing communication and addressing domain knowledge gaps, I've found that having two native speakers on staff at the remote location (myself, an American MBA, and John, a British citizen) helps tremendously. I imagine that's the same benefit you get by choosing a great company like ADS to manage your offshore team.

    I've also found that up to a six hour time difference is easy to manage, but more than that can be difficult.
  • Thank you for saying that Paul. It was our pleasure to work with you and your company for a number of years, and I enjoy our conversations.

    I agree that 6 hours is a good maximum. 12 hours is workable depending on how quickly you need the feedback of the team. If code quality is high a larger time difference is much more manageable. If it isn't, companies will want to consider a team closer to home.
  • > I agree that 6 hours is a good maximum.

    In fact 10 hours has worked pretty well for me as I'm currently working in the evenings. This way communication window (working hours overlap) is still 2+ hours. My co-worker is doing 9-5, and there's also developer from India working for the same client. This means work on the project is going around the clock. Funny thing how this (combined with small user stories and frequent commits) made code merges a rare thing. Also bugs reported in the evening by the client are fixed when he arrives at work next morning. Works like a charm - I wouldn't recommend such a workflow to everybody though.
  • Interesting post. I wonder the same thing often times and hear so many horror stories about companies offshoring and in the end, saving nothing and more times than not, costing more. One big company here in the US offshorted a project and when the code started coming back it was pretty much garbage. They hired a team to take the code as it came over and "refactored" it to live up to their expectations. I guess this actually cost the company money. I can actually name two big companies doing this.

    I am offshoring a small project right now, to see how it works. I think so far it is pretty good but with a 12 hr time difference, communication is hard to say the least.

    What country are you outsourcing to?
  • Hi Robert, thank you for the comment. Currently we work with teams in Columbia, Brazil, and the Philippines. We've been doing distributed Agile for a number of years, and it works really well for us.
blog comments powered by Disqus

Previous post:

Next post: