Good programmers in India, like good programmers everywhere, cost more than bad programmers. If you would like to hire a decent shop, there are boutiques and larger firms available, but they will charge $40-50/hour, not $15. The problem isn't in the outsourcing, it's treating development like a $15/hour commodity. We all know that it doesn't work that way.
The author described paying an hourly rate for their offshore developers that was 10% of the local rate. If you compare the salaries of good developers in places like Bangalore to developers in more wealthy countries like the US, you will find that the difference is not that vast--maybe 25-40%, not 10%. If you would like to hire these people, expect to pay corresponding rates and receive good-quality work.
And don't let anyone tell you that you need crystal-clear requirements; pay for a qualified local business analyst and expect to spend a lot of time on the phone with them.
If you would like to hire a decent shop, there are boutiques and larger firms available, but they will charge $40-50/hour, not $15.
And at that point it's just easier to hire local developers.
I just don't get the push to hire cheap people. Even if you do find someone who is a rock star in the Philippines for cheap they might work for 3-6 months before job hopping again. Any sizable business is going to have systems and businesses processes that take time to learn and if you're constantly churning through people you end up not getting much real work done.
Unfortunately, it's because you're a programmer that understands the actual cost of software development. Believe me, there are many "business" people that don't understand software and never will. They see stories on the news of teenagers developing million dollar iPhone app in a weekend and think "Wow, this must be so easy."
And because they don't understand the difficulty (especially with larger systems) they don't understand why paying one developer $75/hr is probably better than paying one $15/hr. (I say probably because I have come across people charging high rates that weren't really that productive). As a business person who probably can't be that much more productive than the next person, they don't understand how a programmer could really be more productive and get things done in much less time.
To give you an example. On my last contract I was hired near the start of the project. And even though it was near the start, I could tell from the code that this was headed towards a disaster. Eventually I got things cleaned up and got it released for them and they are making money from it. They went through 5 other developers and I ended up being the only one near the end. I left shortly after one of the company owner's comments got passed down to me. He said "Why are we paying this guy so much when we could just hire high school students at $10/hr."
People like that will just not understand the difference and look only at the hourly rate.
And at that point it's just easier to hire
local developers.
No it isn't. Even if you're in the Bay Area, the local talent pool is small, as demand outweighs supply. If you're not Google, or Facebook, or a startup with the potential of being the next Google or Facebook, then you'll get scraps.
There is a wide continuum between what the Googles of the world hires and 'scraps.'[1] You're also falling into the all developers are on HN and live in SV trap. What most businesses would do best with is to hire a small team of good devs who can learn the business and do more than just development. This will require more up front work from the business, but will get the project (and others) complete much easier in the long run.
[1] I've never interviewed at any of those so maybe I'm scraps. Every company I've worked for though is still using my software internally to make them better than their competitors.
But there are plenty of good programmers in the US that will work for $50 an hour, which ends up being about $100,000 a year. And if you can have your users, analysts, and programmers in the same building for what it costs to outsource, why outsource?
$50 sounds low to me--I'm not on the sales side, but I'm told that $75 is closer to the minimum for, e.g. a Ruby skillset, and many shops, such as my employer, charge much more--but yes, at that rate you're better off going local, particularly for the colocation benefits.
Estimate that ~half to ~one third of your time is actual billable time. The rest is finding clients / business junk / expenses. So $50/hr is unsustainably low as a freelancer in the USA.
There is a lot to business than just hourly billing. If you are running a big company. Real estate, paying support services, insurance and other side costs also matters.
All these side expenditure and head ache in managing them saps a lot of money and people.
A lot of people feel its better to some money and have others do it for you. Than you doing it. Especially if that job is not your company's core expertise.
I suspect, depending on region, there are good programmers also willing to work for a bit less. The economy has hit a lot of people, but in some areas of the US, $40ish an hour is comparable to $75+/hr here in the Bay Area -- based on cost of living.
Not that people should undersell themselves, but there are smart people around this country that may be looking for a gig that are losing out on services like Elance/Odesk (if they even know about them) because $15/hr sounds like a good deal.
The author had several good points that are specific to India - e.g., the language barrier, time zone differences, etc - IMO, those points are perfectly valid reasons to single out India.
There are good Indian programmers, but they are so diluted by complete amateurs who decided to go into programming just because it pays well. I've worked at a huge corporation that outsourced a few projects, and even brought some of the best developers on site. Even those guys took days for some silly things that took me a couple of hours to implement. One of them just sucked so bad, he was sent back to India. In the end, my hourly rate made more sense for the corporation, since I produced cleaner code, which often costed them less.
I fixed the title for you. Next time try and avoid generalizing entire countries.