As a recruiter in the computer industry, I observe trends and collect information (albeit anecdotal) that might otherwise go unnoticed. This information comes from speaking with hundreds of candidates and clients each week, all continually expressing similar concerns. At the same time, however, I also rely upon information gathered in a more structured, scientific fashion, including data from organizations such as the U.S. Bureau of Labor Statistics (BLS). In this article, I'll share with you some of the information I've collected when finding candidates and positions in the software-development industry.
Professional specialty occupations, such as software development, are projected to increase the fastest and add the most jobs. It comes as no surprise that computer-related industries are high on the BLS projections in terms of the industries with the fastest job growth, ranking third behind health services and residential care. Likewise, computer-related jobs rank third (again behind health services and residential care) in terms of wage and salary growth, with projected increases in the 4.9 percent range.
Overall in 1994 (the most recent year for which statistics are available), computer scientists and systems analysts held about 828,000 jobs across various industries, agencies, and businesses. According to the BLS, a growing number of computer professionals are employed on a temporary or contract basis, or as consultants, with temporary jobs lasting from several months up to two years or more.
In terms of job outlook, the BLS believes that computer scientists will be among the faster-than-the-average growing occupations through the year 2005. In addition, tens of thousands of job openings will result annually from the need to replace workers who move into managerial positions, other occupations, or who leave the labor force. In short, according to the BLS, anyone with an advanced degree in computer science should enjoy very favorable employment prospects because employers are demanding a higher level of technical expertise. College graduates with a BS in computer science, computer engineering, information science, or information systems should also experience good prospects for employment. College grads with noncomputer science majors who have had courses in computer programming, systems analysis, and other data-processing areas, as well as training or experience in an applied field, should be able to find jobs as computer professionals. Those familiar with CASE tools, object-oriented, client/server, and multimedia technology will have an even greater advantage, as will individuals with significant networking, database, and systems experience. Employers should increasingly seek computer professionals who can combine strong programming and traditional systems-analysis skills with good interpersonal and business skills.
Median annual earnings of computer-systems analysts and scientists who worked full time in 1994 were about $44,000. The middle 50 percent earned between $34,100 and $55,000. The lowest 10 percent earned less than $25,100 and the highest tenth, more than $69,400. Computer scientists with advanced degrees generally earn more than systems analysts.
According to Robert Half International Inc., starting salaries in 1994 for systems analysts employed by large organizations ranged from $43,500 to $54,000. Salaries for those employed in small establishments ranged from $35,000 to $45,000. Starting salaries ranged from $51,000 to $62,000 for database administrators, and from $45,000 to $62,000 for software engineers. In the federal government, the entrance salary for systems analysts who were recent college graduates (with a bachelor's degree) was about $18,700 a year in 1995; for those with a superior academic record, $23,200.
The most common desire of candidates I interact with is to be exposed to new technologies and the chance to make more money. This quest has created turmoil in our industry. Average turnover rates within information-systems (IS) departments are around 16 percent, which is high when you consider that Microsoft Consulting's turnover rate is around 4 percent. However, half of that 4 percent really aren't lost, because they are transferring to Microsoft's corporate headquarters.
This turnover rate has also shortened the length of stay with the average company. Most employees will leave within one-and-a-half to three years of being hired. This is down from just two years ago when the average stay was between three and seven years. It is no longer considered as valuable to have been with a single corporation for ten or fifteen years. While in some cases, staying with a company for a long time will add to your skill set, in other cases, it will detract. In the fast-paced technology arena, a ten-year veteran's learning curve (at one particular company) probably peaked some time ago. Most companies have windows of opportunity for the computer professional that fall into three categories:
It seems that most work revolves around getting ready to do business. The other window of opportunity is the work or projects that follow utilizing new technology.
The other half of the equation for candidates making moves is based on money. If you choose to stay onboard with one company, chances are it will take longer to make the same money as your buddy who changes logos and letterhead every three or four years. Average in-house raises have been in the 2 to 6 percent range for the last few years, but are moving upwards. This is probably due to human-resources departments recognizing the importance of retaining quality peopleit is very expensive to replace you. Still, in-house raises are typically nowhere near the 10 to 15 percent increases of the past. Most significant raises are coming from employees changing companies. It is almost certain you will receive a 5 to 12 percent increase when you move even if your last raise was two months ago. (I recently met a fellow who raised his compensation by 83 percent plus stock options within a week just by changing jobs!) Realistically, the most opportune time for a large salary increase is within the $35,000 to $45,000 window of your career. This is where there is the most flexibility. Salary ranges start to top out around the $50,000 to $55,000 mark, and management positions aren't as readily available or suitable for everyone.
Many programmers have discovered that one way of making more money is by working on a contractual basis. This is a fruitful avenue if you have a highly desired skill set and are comfortable with the contracting environment. Contracting can also alleviate some of the problems associated with permanent employment. Companies aren't usually as picky in regard to personalities and long-term commitments when dealing with contractors. If you land a bad assignment, it is only for a short term. You can also get exposed to new things rather quickly. And you can make more money. Remember, however, that contractors rarely (if ever) get benefits, and they have higher taxes and less security.
Currently, the hottest demands I hear from clients are in the areas of Visual C++/MFC, Powerbuilder/Sybase, and Windows NT. I have companies calling and literally begging me to send them candidates with these skill sets. This is a perfect example of how the market can change quickly. Two years ago, Novell was the hottest network going, and everyone was paying thousands of dollars to get their CNE, CNA, and MCNE certifications. Now, Windows NT appears to be the front runner, and everyone is trying to obtain Microsoft's certification (MCSE). Since it is impossible to second guess the market, you need to do some soul searching and decide if you want to remain with your current technology and become a guru (and possibly obsolete), or chase after what is hot today.
This brings up an interesting point. Keep in mind that there is a great need for junior people in every area. This is due to the fact that most of the senior employees have been around long enough to command high dollars and have basically priced themselves out of most companies' salary ranges. These senior gurus will probably find most of their success in consultant roles rather than staff positions.
And even with Java, object orientation, and the like, even Cobol programmers are still in demand for several reasons.
It appears that young programmers want and need to learn new visual and object-oriented languages. This has created a shortage of new-generation programmers to take over the existing systems. Again, the senior programmers are too expensive to comprise your entire staff, so some young, affordable new hires are needed. Mainframe is not dead, it has just been dormant.