Goods and services. All organizations today rely on computer and information technology to conduct business and operate more efficiently. Computer software is needed to run and protect computer systems and networks. Software publishing establishments are involved in all aspects of producing and distributing computer software, such as designing, providing documentation, assisting in installation, and providing support services to customers. The term "publishing" often implies the production and distribution of information in printed form. The software publishing industry also produces and distributes information, but usually it does so by other methods, such as CD-ROMs, the sale of new computers already preloaded with software, or through distribution over the Internet. Establishments in this industry may design, develop, and publish software, or publish only. Establishments that provide access to software for clients from a central host site, design custom software to meet the needs of specific users, or are involved in the mass duplication of software are classified elsewhere. (For more information, see the section on computer systems design and related services.)
Industry organization. Software is often divided into two main categories—applications software and systems software. Applications software includes individual programs for computer users—such as word processing and spreadsheet packages, games and graphics packages, data storage programs, and Web browsing programs. Systems software, on the other hand, includes operating systems and all of the related programs that enable computers to function. Establishments that design and publish prepackaged software may specialize in one of these areas, or may be involved in both. Some establishments also may install software on a customer's system and provide user support. In 2008, approximately 10,400 establishments were engaged primarily in computer software publishing, or in publishing and reproduction.
Recent developments. The Internet has vastly altered the complexion of the software industry over the last decade. Much of the applications and system software that is now developed is intended for use on the Internet, and for connections to the Internet.
Organizations are constantly seeking to implement technologies that will improve efficiency. For example, Enterprise resource planning (ERP), which is typically implemented by large organizations with vast computer networks, consists of cross-industry applications that automate a firm's business processes. Common ERP applications include human resources, manufacturing, and financial management software. Recently developed ERP applications also manage a firm's customer relations operations and supply chain logistics.
This widespread use of the Internet and intranets also has led to greater focus on the need for computer security. Security threats range from damaging computer viruses to online credit card fraud. The expansive use of e-commerce increases this concern, as firms use the Internet to exchange sensitive information with clients. As a result, organizations and individual computer users are demanding software, such as firewalls and antivirus applications, that secure their computer networks or individual computer environments.
In a recent trend, software services that are provided over the internet have become more common. While online e-mail and data storage have been offered for several years, word processing, spreadsheet, ERP, and other services are increasingly moving to the World Wide Web. Establishments in the software publishing industry are expected to be involved in the development and design of many of these products.
Hours. In 2008, workers in the software publishing industry averaged 37.0 hours per week, compared with 33.6 for all industries combined. About 43 percent of individuals in this industry worked 40 hours per week, but about 25 percent worked 50 or more. Only about 4 percent of the workers in the software publishing industry worked part time.
Work environment. Most workers in this industry work in clean, quiet offices. Given the technology available today, however, more work can be done from remote locations using e-mail and the Internet. Injuries in this industry are rare, but employees who work at computer terminals for extended periods may experience musculoskeletal strain, eye problems, or repetitive motion injuries, such as carpal tunnel syndrome.
In 2008, there were about 263,700 wage and salary jobs in the software publishing industry. Although the industry has both large and small firms, the average establishment in software publishing is relatively small; about 62 percent of the establishments employed fewer than five workers. Many of these small establishments are startup firms that hope to capitalize on a market niche. About 77 percent of jobs, however, are found in establishments that employ 50 or more workers.
Relative to the rest of the economy, there are significantly fewer workers 45 years of age and older in software publishing establishments. This industry's workforce remains younger than most, with large proportions of workers in the 25-to-44 age range (table 1). This reflects the industry's explosive growth in employment in the 1990s, which afforded opportunities to thousands of young workers who possessed the latest technical skills.
|Age group||Software publishers||All industries|
|65 and older||2.5||4.1|
Providing a wide array of information services to clients requires a diverse and well-educated workforce. The majority of workers in the software publishing industry are professional and related workers (table 2). This major occupational group accounts for about 60 percent of the jobs in the industry, reflecting an emphasis on high-level technical skills and creativity.
Professional and related occupations. Computer specialists make up the vast majority of professional and related occupations among software publishers, and account for about 52 percent of the industry as a whole. Their duties vary substantially, and include tasks such as developing software applications, designing information networks, and assisting computer users.
Computer programmers write, test, and maintain the detailed instructions, called programs or software, that computers must follow to perform their functions. They often work under the supervision of computer software engineers, whose main jobs is to design software. Following the specifications that are developed by software engineers, programmers break down each operation into a logical sequence of steps, and convert the instructions for those steps into a language that the computer understands. While some programmers still work with traditional programming languages like COBOL, most programmers today work with more sophisticated tools. Object-oriented programming languages, such as C++ and Java, computer-aided software engineering (CASE) tools, and artificial intelligence tools are now widely used to create and maintain programs. These languages and tools allow portions of code to be reused in programs that require similar routines. As some of the programming process has become automated, many programmers have begun to assume more responsibilities, such as customizing purchased software or creating better software to meet a client's specific needs.
Computer software engineers design, develop, test, and evaluate software programs and systems. Although programmers write and support programs in new languages, much of the design and development is the responsibility of software engineers. Software engineers must possess strong programming skills, but are more concerned with developing algorithms and analyzing and solving programming problems than with writing code. These professionals develop many types of software, including operating systems software, network distribution software, and a variety of applications software. Computer systems software engineers coordinate the construction and maintenance of a company's computer systems, and plan their future growth. They develop software systems for control and automation in manufacturing, business, and other areas. They research, design, and test operating system software, compilers—software that converts programs for faster processing—and network distribution software. Computer applications software engineers analyze users' needs and design, create, and modify general computer applications software or specialized utility programs. For example, video game programmers are software engineers who plan and write video game software.
Computer support specialists provide technical assistance, support, and advice to customers and users. This group of occupations includes workers with a variety of titles, such as technical support specialists and help-desk technicians. These troubleshooters interpret problems and provide technical support for software and systems. They answer telephone calls, analyze problems using automated diagnostic programs, and resolve difficulties encountered by users.
Other computer specialists include a wide range of professionals who specialize in operation, analysis, education, application, or design for a particular piece of the system. Many are involved in the design, testing, and evaluation of network systems such as local area networks (LAN), wide area networks (WAN), the Internet, and other data communications systems. Specialty occupations reflect an emphasis on client-server applications and end-user support; however, occupational titles shift rapidly to reflect new developments in technology.
Sales and related occupations. A substantial number of marketing and sales workers also are employed in this industry. In order to compete successfully in the online world, the presentation and features of software and other content related to information technology becomes increasingly important. For example, publishers of software that provide Internet services must be able to differentiate their products from those of their competitors. Marketing and sales workers are responsible for promoting and selling the products and services produced by the industry.
|Occupation||Employment, 2008||Percent Change,
|Management, business, and financial occupations||49.8||18.9||29.8|
|General and operations managers||5.5||2.1||16.4|
|Computer and information systems managers||9.3||3.5||30.3|
|Accountants and auditors||4.2||1.6||32.8|
|Professional and related occupations||159.2||60.4||31.4|
|Computer software engineers||65.2||24.7||29.3|
|Computer support specialists||18.9||7.2||42.2|
|Computer systems analysts||11.4||4.3||42.2|
|Sales and related occupations||22.8||8.6||26.0|
|Sales representatives, services, all other||3.5||1.3||27.6|
|Sales representatives, wholesale and manufacturing||13.8||5.2||27.7|
|Office and administrative support occupations||28.0||10.6||26.8|
|NOTE: Columns may not add to totals due to omission of occupations with small employment.|
Occupations in the software publishing industry require varying levels of education, but because of the large number of workers in professional occupations, the education level of workers in this industry is higher than average. The level of education and type of training required depend on the employer's needs, which often are affected by such things as local demand for workers, project timelines, and changes in technology and business conditions.
Professional and related occupations. Although there are no universal educational requirements for computer programmers, workers in this occupation commonly hold a bachelor's degree. Some hold a degree in computer science, mathematics, or information systems. Others have taken special courses in computer programming to supplement their study in fields such as the physical sciences. Because employers' needs are varied, a 2-year degree or certificate may be sufficient for some positions, as long as applicants possess the right technical skills. Computer programmers must continually strive to keep their skills up to date. One way to do this is through professional or technical certification. Certification can be obtained independently through a number of organizations, although many vendors now assist employees in becoming certified.
Entry-level computer programmers usually start working with an experienced programmer to update existing code, generate lines of one portion of a larger program, or write relatively simple programs. They then advance to more difficult programming assignments, and may become software engineers or systems analysts. With continued experience, they may move into management positions within their organizations.
Most computer software engineers have a bachelor's or higher degree, in addition to broad knowledge and experience with computer systems and technologies. Common degree concentrations for applications software engineers include computer science and software engineering. Common degree concentrations for systems software engineers include computer science and computer information systems. Graduate degrees are preferred for some of the more complex software engineering jobs. Some employers seek workers with additional knowledge and experience. For example, a computer software engineer interested in developing e-commerce applications should have some expertise in sales or finance. Computer software engineers may also benefit from getting a technical or professional certification. Computer software engineers who show leadership ability can become project managers or advance into management positions.
Persons interested in becoming a computer support specialist generally need only an associate degree in a computer-related field, as well as significant hands-on experience with computers. They also must have strong problem-solving, analytical, and communication skills, because troubleshooting and helping others are their main job functions. Like other computer professionals, computer support specialists must constantly strive to stay up to date and acquire new skills if they wish to remain in the field.
Computer support specialists who develop expertise in a particular program or type of software can advance to a position as a programmer or software engineer.
Sales and related occupations. Many marketing and sales workers are able to secure entry-level jobs with little technical experience, and acquire knowledge of their company's products and services through on-the-job training. Computer specialists also have opportunities to move into sales positions as they gain knowledge of specific products and services. For example, Computer programmers who write accounting software may use their specialized knowledge to sell products to similar firms. Also, computer support specialists providing technical support for an operating system may eventually market that product, based on their experience and knowledge of the system.
Employment in software publishing is projected to grow as firms continue to invest heavily in software and other information technology. Job prospects should be excellent, especially for computer specialists.
Employment change. Wage and salary jobs in software publishing are expected to increase by 30 percent between 2008 and 2018, almost 3 times as fast as the 11 percent growth projected for all industries combined. Growth will not be as rapid as it was during the technology boom of the 1990s, however, as the software industry continues to mature and as routine work continues to be offshored.
Demand for software publishing services will grow as a result of an increasing reliance on information technology. Individuals and organizations will continue to invest in applications and systems software to maximize the return on their investments in equipment, increase efficiency, and remain competitive.
The growing reliance on the Internet will be a major driver of job growth. The way the Internet is used is constantly changing, and so is the software required to run new and emerging computer applications. The proliferation of "mobile" technologies, has created demand for a wide variety of new products and services. The expansion of the wireless Internet brings a new aspect of mobility to information technology by allowing people to access the Internet without the constraints of physical connections. In addition, the rapid development of handheld, Internet-enabled devices is making the World Wide Web accessible from virtually anywhere. As businesses and individuals become more dependent on this technology, there will be an increasing need for new software applications that maximize the potential of wireless products.
In a growing trend, a wide variety of software services are being offered over the internet. Rather than being stored and accessed on the individual computers of businesses and users, word processing, spreadsheet, enterprise resource planning, and other types of applications can now be accessed remotely. This is attractive to many organizations, as it reduces the need for costly storage equipment. Much of the design and development of these applications will be completed by establishments in the software publishing industry.
Another significant factor contributing to growth among software publishers will be computer security. Organizations invest heavily in software to protect their information and secure their systems from attack. And, as the amount of data transmitted across the Internet increases, the importance of maintaining computer system and network security will grow, leading to greater demand for security software.
Given the increasingly widespread use of information technology and the overall rate of growth expected for the industry, most occupations should grow, although some faster than others. Employment of computer specialists, such as computer software engineers and computer systems analysts, will be particularly strong, as they are integral to the software-design process.
Job prospects. Job opportunities in software publishing should be excellent for most workers, given the rate at which the industry is expected to grow, and the increasing integration and application of software into all sectors of the economy. Computer specialists should enjoy the best opportunities, reflecting continuing demand for workers with high-level skills to keep up with changes in technology.
Industry earnings. Employees in the software publishing industry generally command higher earnings than the national average. In 2008, nonsupervisory workers in the industry averaged $1,407 per week, significantly higher than the average of $608 for all industries. This reflects the concentration of professionals and specialists who often are highly compensated for their skills or expertise. Wages in the occupations with the largest employment in software publishing appear in table 3.
|Occupation||Software publishers||All industries|
|Computer and information systems managers||$60.98||$53.95|
|Computer software engineers, systems software||45.00||44.44|
|Computer software engineers, applications||42.17||41.07|
|Computer systems analysts||38.18||36.30|
|Network and computer systems administrators||37.17||31.88|
|Sales representatives, wholesale and manufacturing, technical and scientific products||36.69||33.75|
|Computer specialists, all other||35.63||36.13|
|Computer support specialists||22.38||20.89|
|Customer service representatives||15.86||14.36|
As one might expect, wages vary by occupation, and within occupations. For example, in May 2008, hourly wages of computer software engineers, applications ranged from less than $25.83 for the lowest 10 percent to more than $61.95 for the highest 10 percent. Managers usually earn more, but their wages also can vary. For example, hourly wages of computer and information systems managers ranged from less than $33.05 for the lowest 10 percent to more than $80.00 for the highest 10 percent. Differences in earnings within an occupation are a result of many factors. For example, workers with higher levels of experience and education may command higher wages than their counterparts with lower levels of experience and less education. Earnings also may be affected by the area of the country in which the establishment is located. Workers in major metropolitan areas typically earn more than workers in smaller cities or towns, or in rural areas.
Benefits and union membership. Workers generally receive standard benefits, including health insurance, paid vacation and sick leave, and pension plans. Unionization is rare in the software publishing industry. In 2008, 2 percent of workers were union members or covered by union contracts, compared with 14 percent of workers throughout private industry.