The thing about international conferences is that they are, well, international.
That means that the "offshore menace" that we talk about at the water cooler is sitting in the table across for you.
This begs the question: How should I think about offshore development? On the one hand, we'd like to welcome offshore technical folks into the fold, share and collaborate. On the other, on many projects we are competing directly against them for work - and the offshore folks have a huge economic advantage.
I've been struggling with this for some time. My Master's Capstone
was on outsourcing (not actually offshoring), and a I've published an article
on the subject.
So here I am, at STAREast, talking to Shrini Kulkarni
, one of two Indian blogs that I read regularly - and I am about to stand up and give a lighting talk on Offshore development and testing.
Here goes ...
First of all, I think the economic disparity between offshore and local work is shrinking. The biggest software factory in India is Bangalore - a single city - with serious transportation issues. This means that the number of qualified people available to work jobs in India is bound, but the demand keeps increasing. This drives wages up very quickly. Right now, from the spec sheets I see, you can pay about the same rate for a qualified tester in Nebraska, Idaho, or Iowa as you will for one in Bangalore. Also, American on-shore testing services tend to have less layers of management than large, CMMI-rated shops in India. Of course, you can pay more in the US by hiring IBM and pay less in India by hiring a small shop, but you get the generality.
Second, companies that outsource work will take a huge productivity hit when they go past three time zones. Oh, you can use webcams and work evenings and such, but if your primary communication language is English, then you are subject to an intense amount of vagaries and confusion. Keep in mind, English was invented in the middle ages to serve the needs of the populace; the educated folk had Latin. Unlike code, English just isn't well suited for communicating things. What you need to do is to periodically re-connect, assess, and remove the communication gaps. With offshore work, this is very expensive.
Third, when outsourcing works, it sort of "scrapes off the bottom" the work that is predictable, simple, easy, and doesn't add much value - sourcing that to the lowest bidder. If you are doing technology work in the US, you don't want to be scrapped off the bottom. And if you are leading and helping and collaborating with folks, you don't need to be afraid of the bottom-scrapers - because you are sitting at the top.
My conclusion is that outsourcing is good for good technologists (We will continue to gain expertise and reputation by helping the community), bad for bad technologists (who will be scraped off the bottom) but good for customers - who let the free market decide.
Because of the issues above, I think the two sides are about even. When I was ten, my Dad said something like "May the best man win" as a value system. If US staffers are getting over-paid to do little work, heck, may the best man win. In the mean time, let's work together to collaborate, because Iron sharpens iron.
I also would like to point out that the sheer price (in Rupees) of a plane ticket from India to the 'States virtually guarantees that the internationals who attend conferences have something to say and share - these are people who are truly committed to the field. Let's work togetherEpilogue
Because of the physical distance, the only way to meet a Shrini or a Pradeep or a Harish Krishnakutty in person is to attend an international conference. And if you do, a lightning talk like the one above is literally just five minutes of the content that you'll get. As for how to get to the conference, again, read on ...