Saturday, September 29, 2012

Where are the Programmer Jobs

I've been doing some research for my new book "Managing Computer Systems in the 21st Century" and came across a rather stunning fact at the US Bureau of Labor Statistics (BLS.gov).

First and foremost, it is interesting that various analysts like Gartner Group, Forrester and others report that IT budgets continue to fluctuate in the range of 1.6% to 1.8% of revenue and have since the 1970's. 

At first glance that is not unusual, but when we look at hardware costs, we see that the cost of computer equipment which used to dominate IT budgets have dropped to a fraction of what they were in the 1970's. 

You can now pay $1500 for computers that are several times more powerful than those that you had to pay well over $1 million for in 1974.  This is not just packaged systems but also components of computer systems.  How about a 1970's IBM 3330-1 Disk Drive with 100 mb capacity selling for approximately $25,970.00 (http://www.jcmit.com/diskprice.htm) compared to a 1 terabyte Western Digital plugable drive for $99.99 at Best Buy (http://tinyurl.com/8goq8sb).

Today's costs have shifted to labor costs.  Often times a great deal of the modern IT department's costs are in labor for employees that support the hardware, operating systems, and other infrastructure and system software that are required to support the hardware today.  Large companies will spend millions of dollars on this type of support while even small companies will spend a great deal of their budget on this type of non-productive but "necessary" overhead.

The programmer population in the US has decreased dramatically in the last few years.  According to The US Bureau of Labor Statistics (http://www.bls.gov) The U.S. population of programmers fell from 363,100 people in 2010 to 320,100 in 2011 a loss of 43,000 people!  Note that salaries have climbed steadily since 1922 when the BLS reported an average programmer salary of $63,690 to 2011 where the average grew to $76,010. 

Where did the jobs go?  This number includes ALL programmers, not just legacy programmers in COBOL or other legacy language (like RPG).  It includes Java and C++ programmers.  Note that major employers like Microsoft, IBM, HP, Google, Yahoo, and many other well known companies are outsourcing thousands of programming jobs to India and China. 

Some major US corporations have followed suit, but most have tended to retain their legacy staff of developers.  It is time to look critically at corporate IT organizations today and look at three critical opportunities to reduce costs and improve overall efficiency:

  • Cloud computing and eliminate not only computer hardware costs, but the labor cost of the people required to support these computer systems without providing a direct ROI to the enterprise.
  • Outsourcing of software development to 3rd party firms.  Replace a fixed annual cost for developers to a direct cost associated with development projects supported and budgeted by the business units.
  • Open Source vs 3rd party vendor or in-house developed software.  While open source is not free, it is vastly more cost effective and of much higher quality from a feature and functionality perspective than traditional 3rd commercial vendor systems (which are most likely 25 years old or more) and have no annual maintenance paid to the vendor.  Note there are now open source applications for just about every business enterprise imaginable.
I advocate a total computer system assessment where your existing systems and your IT Organization are evaluated objectively to determine how well they are serving your enterprise and if you are in fact getting an ROI!.