In general, I agree with most of the points in an article published in InformationWeek about How To Select An Indian Outsourcing Partner. The author takes a sober view about outsourcing that comes across a bit negative.

I wouldn’t write off Indian or global software development just yet. My experience with global outsourcing of software development shows two major pitfalls that people run into:

  1. Selecting the wrong kind of vendor
  2. Not providing the right kind of specifications

By wrong kind of vendor, I mean one that is happy to charge you for some junior programmers put in a room for you, and even give them computers and an Internet connection, but then fails to follow through with any kind of supervision, management or professional software development process.

This kind of vendor is what I call a “body-shop” and is only acceptable if you have the time and experience to manage these programmers remotely. It’s an easy mistake to make if you can’t hire programmers locally. You think you’ll just hire them over there.

A better approach is to select a vendor that can offer you a combination of junior and senior programmers and experience with a software development process

Other vendors may be great at executing fixed-price projects but only if they are given very detailed specifications. And the author says you should have detailed specifications, but this is where I disagree a little. Anyone that develops software, especially new applications, knows detailed specifications are just not completely practical.

New Agile software development methods have become more popular lately for the development of new software. But this highly collaborative approach is difficult (but not impossible with the right vendor) to do at a long distance. That’s why many U.S. companies are now looking at outsourcing to Latin America where there is more workday and cultural overlap.

In summary, I think a key mistake people make is treating software development only as a financial transaction rather than recognizing it as a collaborative and creative process. If all you hire is cheap programmers without experience, no matter what country they are in, then you will get what you pay for.

Bookmark to:
Add 'How to Fail at Outsourcing' to Del.icio.us Add 'How to Fail at Outsourcing' to digg Add 'How to Fail at Outsourcing' to FURL Add 'How to Fail at Outsourcing' to blinklist Add 'How to Fail at Outsourcing' to My-Tuts Add 'How to Fail at Outsourcing' to reddit Add 'How to Fail at Outsourcing' to Feed Me Links! Add 'How to Fail at Outsourcing' to Technorati Add 'How to Fail at Outsourcing' to Socializer Add 'How to Fail at Outsourcing' to Slashdot