We're rapidly approaching a crisis in the software development field. The demand for advanced technology skills is not being met. Application development will lag given the current situation. The causes are myriad, and will be discussed. What are companies to do, faced with a lack of qualified candidates? Some of my suggestions might sound far-fetched, but we are facing a new reality and so all alternatives deserve consideration.

Depending on which source you believe, there are currently some 350,000 information technology jobs going begging. American Colleges and Universities are graduating fewer, not more IT professionals. It would appear that students are eschewing the IT field in favour of law and medicine, probably drawn by the high earning potential of those practices. It doesn't help that the common image of a computer professional includes plastic pocket protectors and coke bottle glasses held together with electrical tape. Never mind that one of the richest men in the world is a computer geek.

With the lack of domestic talent, companies have, for the last few years, cast their net wider. Importing people from places such as India or farming work out to companies in other countries is an approach which will soon become impractical. As the world moves to embrace the power of computers, even the international talent pool is going to dry up rapidly. Also, given that the current limit on the number of H1-B visas granted is only 115,000 per year, importing talent is becoming difficult. In fact, the limit is usually reached very early in the year, usually by April or May.

In my experience, domestic talent has not shown any interest in learning new technologies such as Java and CORBA. They stick to relatively simple application development environments such as Visual Basic. With these skills becoming a "dime-a-dozen" commodity, these people should really be upgrading their skills. I see very little enthusiasm among these people for making such an effort. They seem quite comfortable in their current situations and, for now, they also enjoy good job mobility. With the trend toward n-tier application architectures, these people will not always be in such demand.

On the web side of the house, almost anyone can learn HTML and call themselves a "web designer." JavaScript is not the same as Java, although some head-hunters don't seem to appreciate the difference. Even some of the newer technologies such as Active Server Pages and even ColdFusion are very easy to learn. This is not surprising since the trend has been to simplify the tools such that a high level of skill is not required. This group too seems unwilling to make the investment in learning the skills which will see increasing demand.

Given this bleak outlook, what is a company to do? The answer lies on the internet. I've written on this topic before, but with the high cost of commercial real-estate, increasing congestion on the highways and the corresponding increase in commute times, companies should welcome solutions which will save them money. Potential employees are also keenly aware of the costs associated with commuting to a central office. These costs include the time lost in getting to and from the office, tolls, parking, clothing, as well as food and drinks.

With the recent introduction of residential high-speed internet access, individuals now have the ability to connect at speeds which will support protocols such as X.11 as well as permit rapid FTP transfers. Computer hardware has improved to the point where a 500 MHz system is available for under $500. Note that this is often more powerful than the systems deployed in many offices. The internet has also made readily available the software tools necessary to develop applications. Many people, myself included, now have powerful networks of computers at home. Equipped with a camera, microphone and speakers, these people can even video-conference from home.

I'm sure that you can see where I'm going with all this. We're talking about a major paradigm shift in software development. I'm not the first to have recognized the new reality; O'Reilly has helped to create the sourceXchange. Linking developers with potential clients, this is not the only site of its kind. While still in its infancy, I expect this to be a burgeoning field over the next few years. Obviously the concept will take some time to be fully embraced, but it represents an effort to address the current skills shortfall.

American management will face the steepest learning curve in the face of the new reality. For managers used to measuring their status by head-count and the amount of floor space they occupy, having people working for them off-site will be difficult to accept. People used to having direct, visual oversight of their staff will undoubtedly worry about whether their staff are putting in their 40 hours a week or just shirking. That is why we need to shift from an hour-oriented view to a task-oriented view. With well-defined tasks and agreed-upon schedules, the hours of work become immaterial. If someone wants to work from noon until 10pm, it shouldn't matter, as long as the work gets done.

With such a flexible approach, new pools of talent become available. Stay at home mothers, retired from the work force due to their inability to adhere to the 9-5 schedule, can work from home while still able to care for their children. People with mobility problems are similary enfranchised. With no commute to worry about, people will often end up working more than 40 hours a week anyway. Similary, if someone chooses to work 16 hour days and completes a task in half the scheduled time, it should not matter that they spend the remainder of the time in any way they choose.

This approach enables the use of other than full-time employees. By implementing a task-oriented model, outside contractors can be utilized as much or as little as the company desires. Of course, this raises the issue of the skill and reliability of the contractors. SourceXchange uses a peer-review model in order to rank the work provided by contractors. The customer also reviews the deliverable and all comments are added to the record of the contractor. Finally, one cannot discount personal recommendations. People who have worked together in the past will have a good prespective on the strengths and weaknesses of each other. It also behooves one to make honest appraisals since a recommendation reflects on the person making the recommendation.

Will this model resolve the lack of qualified candidates? No, but it certainly increases the size of the talent pool. It reduces overhead since no office space, telephone, computer, supplies, etc. are required for external contractors. It's not a solution for every situation, but companies competing for scarce resources should at least give it consideration. Offering people the flexibility to work their own hours and at their own pace is a very attractive incentive. It's also one of the best suggestions I can make to address the current situation, which I don't see improving in the immediate future.

June 10th, 2000

ps. It's a bit old, but click here for some background.
This link is more current and seems to support my postulation.