Are "offshore rates" good? What do developers get paid around the world?
Today I got the ambiguous question "are offshore rates good?". This gave me a chance to share some of my recent findings on compensation for developers from around the world.
Low offshore rates are a good thing because I am a buyer of programming services, and labor accounts for most of my costs. Lower rates are good for startups, which can look globally to eliminate staffing constraints, do much more, and compete with bigger players. In the last seven years this has been a powerful economic force for startups and for my clients. Lower rates are also good because they give me leeway to raise someone's compensation. If I find someone good, and I can double that person's income, that's has a great impact on our relationship.
High offshore rates are a good thing, because I myself am a developer. I want to be well paid, and I think it is very important for developers to be well paid. In that sense, the current trend is excellent, because the demand for development talent has boomed on a global basis, and so has compensation.
I am preparing to publish a blog article called "The End of Offshoring" in which I note that booming demand outside the US (and, to some extend, the falling dollar) has raised compensation for "offshore" talent. This is a significant change with a lot of implications for macroeconomics and for business strategy.
Rates are rising quickly in all markets. The lowest rates are in Pakistan and Ukraine. American and India are in the middle. Europe and California are the most expensive. California is really its own country in the tech world, and Russia is regional. Almost no development services get exported from Japan (low supply), or from hyper-fast growing economies like China (too much internal demand).
Indian development shops will argue that they really are cheaper than American development shops. This was true in the past. Even now, Indian labor is a lot cheaper if you are buying generic "resources", which is what the Indian companies want to sell. However, a generic "resource" is not the same as a talented human. India has a high percentage of average programmers, because Indians often become programmers to get a good job, not because they are good at it. Many of those individuals would not make it in America. The percentage of truly talented programmers is about the same in any population, and it's a small percentage. The good programmers, the people who can make it anywhere, the people that I want to work with, cost almost as much when hired in India as in America. The global market is efficient and they move back and forth from India to America and now, with the strong Euro currencies, to the UK. Statistics, and my experience, show that Indians tend to move more than other demographics. Turnover costs money. So, the limited cost saving available by hiring in India is often offset by a cost of turnover. Welcome to the post-offshoring world. It's no longer a no-brainer to reduce costs by moving your operations (the easy step for Americans), or by selling where rates are higher (the easy step for Indians). You have to think more deeply and compete on the merits.
As a buyer of programming services, and a potential colleague, I'm looking for the best possible talent worldwide. Mostly, I am trying to expand the talent pool. We don't think regionally. The productivity difference between a good programmer and an average programmer can be huge. In the end, finding highly productive developers is more important than adjusting the cost. So, at Assembla, we run competitive trials. We give out a lot of paid trial tasks, and then we try to sign up the individuals that do well on long-term engagements at a compensation level that makes them happy.