by Christopher Keene
Upon telling a New York City cabbie last month that I was a software entrepreneur, he confidently replied, “oh, there’s no money in that, all the software jobs are going to India.” On the same trip, a Wall Street CIO told me he can hire 5 or more equally qualified developers in Delhi for each one he has on staff in Manhattan.
Cabbies and CIOs alike are tuned into the sudden global labor shift for software technology. Less visible, however, is that this labor shift has been enabled by a more gradual but equally stunning collapse in the barriers to entry for software engineering.
To understand how this shift was possible, step back to the programming world of the late 90’s. In those days, the hardware and software costs for a Unix developer desktop ran $40,000 or more per seat by the time you threw in a Sun workstation, Oracle database and various software development tools. Like the master mechanics of generations past, American programmers once had almost exclusive access to these leading edge tools of the trade.
Just like master mechanics, programmers were not considered fully productive until they had been using their tools for 2-3 years. Finally, throw in the pace of technical change, which made each generation of tools obsolete ever 5 years, and the barriers to entry for high end programming seemed insurmountable.
Around 1999, all these barriers started to crumble. Two separate open software movements – Linux and Java - made it possible for anyone in the world with a cheap PC, a modem and a lot of patience to match the most sophisticated development environments available in the US. It took about three years for these internet-enabled developers to get up to speed, but in that time software development went from being one of the most exclusive US industries to one of the most portable profession on the planet.
The result for Wall Street and Silicon Valley is that many of the technology jobs shed in the last recession are reappearing in places like India. That giant sucking sound on both the East and West coasts is the noise of highly skilled and formerly high-paying programming jobs speeding to the Far East.
The affect of outsourcing on US IT is not completely bleak. The exodus of systems developer positions has created more opportunities for US-based business analyst positions within the IT organization. As more of the implementation work goes overseas, the job of specifying requirements for work to be done is becoming more important.
Software developers have been famously antisocial – the running joke has been that the only interaction they want with end users is regular insertion of fresh pizza boxes under the door. This is changing rapidly, however, as developers who value their jobs are rediscovering service orientation. The leveling effect of outsourcing means that the developers left on our shores will be those who excel in translating between what the user wants and what technology can deliver.
All of these shifts in software development labor are influencing the world of software tools. As more of the basic programming tools are annihilated by open source clones, the focus on for-pay tools will shift to products that increase the amount of work that can be done at the business analyst level.
Examples include graphical modeling products for defining and processing business rules and tools for automatically generating application modules from high level business models. The much-trumpeted world of web services is one example of this trend, which aims to shift more of the development function away from low-level coding and toward business process management.
The more that can be accomplished with higher level design tools, the less outsourcing of rote programming is required. The more value that can be added to the on-shore design stage, the less needs to get done offshore. In practice, this will give a boost to technologies like model-driven development that aim to automate more of the manual coding processes currently moving offshore.
Finally, the Indian software market itself may already be nearing the end of its golden age. It is getting harder to find people in India now willing to do the jobs they were doing just two years ago, primarily testing and quality assurance work.
In the last six months, our Indian consulting team has experienced over 50% turnover as entrepreneurial Indians jumped from large, established integrators to start-ups. In the same time period, we have had two Indian consultants who accepted job offers but failed to show up for work.
In both cases, it transpired that these no-show engineers had accepted better offers between the time they accepted and the time they started work. From these anecdotes I deduce that the invisible hand of market demand is alive and at work in the Indian labor market.
While cabbies in Bombay are turning in their licenses to become developers, cabbies in New York feel more secure in their day job than going to night school for programming. We entrepreneurs, however, will mine the opportunities that come in making onshore developers more productive and improving the collaboration between on and off-shore teams.