← Back to context

Comment by fhd2

2 days ago

It's quite simple market forces, from where I stand.

Companies in high income areas have two options for outsourcing:

1. Just go for the cheapest salary, quantity over quality style.

2. Find a replacement that has a comparable level of skill, experience and knowledge to the local talent they have or would need.

Now for (1), there is almost no floor. You can get devs for five bucks an hour. For some people, it's the only way they can make any money, so they take it.

For (2), people will gravitate towards earning 10-30 % less than a local equivalent developer. Low prices drive up demand, and since there isn't that much supply of strong candidates, that drives up their fees. At the same time, the employer pays a bit of a tax in terms of time zone, proximity and cultural differences, which introduces overhead, so it can't quite reach the local salaries. But it can get pretty close.

A lot of the outsourcing horror stories are (1). A lot of the actual success with outsourcing is, in my experience, (2).

I believe (1) is primarily responsible for these ebbs and flows you mention. The feedback loop for software development (in terms of whether it pays off economically) are _long_. That seems to force history to repeat all the time, because decision makers rarely see the consequences of their actions. The incoming generation of leadership did though. And then the generation after that didn't.

I think many companies intend to do (2) but find themselves in (1) because they try to force their assumptions about the mythical cost savings, which aren't actually there.

  • I've seen companies blatantly pursue the lowest possible hourly rate, kinda disregarding anything else (time zone difference, quality etc). I believe it comes from a procurement mindset (works for other areas, and probably taught in business school):

    1. One $unit of $resource from supplier A is cheaper than from supplier B.

    2. The price difference is sufficient to allocate a certain amount to dealing with quality issues (from lower efficiency to lawsuits).

    3. If it turns out the quality issues are higher than expected, switch to supplier B.

    The thing is, this doesn't work with software development. (2) has that pesky long feedback cycle. (3) typically is about equivalent to starting over from scratch.