Occupation Profile for Computer Software Engineers, Applications

Develop, create, and modify general computer applications software or specialized utility programs. Analyze user needs and develop software solutions. Design software or customize software for client use with the aim of optimizing operational efficiency. May analyze and design databases within an application area, working individually or coordinating database development as part of a team.


Significant Points

  • Computer software engineers are one of the occupations projected to grow the fastest and add the most new jobs over the 2006-16 decade.
  • Excellent job prospects are expected for applicants with at least bachelor’s degree in computer engineering or computer science and with practical work experience.
  • Computer software engineers must continually strive to acquire new skills in conjunction with the rapid changes that occur in computer technology.


$79,780.00 Median Annual Wage 30,000 Average Job Openings Per Year
2.6 Average Unemployment Percentage 2.2 Percentage That Completed High School
507,000 Employment Numbers in 2006 13.0 Percentage That Had Some College
733,000 Employment Numbers in 2016 (est.) 84.8 Percentage That Went Beyond College Degree

Sample Job Titles
Application Architect
Application Integration Engineer
Applications Analyst
Applications Developer
Applications Programmer
Artificial Intelligence Specialist
Automation Engineer
Beta Tester
Bioinformatics Specialist
Business Systems Analyst
Computer Applications Developer
Computer Architect
Computer Consultant
Computer Programmer
Computer Programmer Analyst
Computer Specialist, Software
Configuration Manager
Data Analyst
Data Warehouse Architect
Database Analyst
Database Designer
Database Technician
Engineer, Computer Applications
Engineer, Computer Software
Engineer, Software Applications
Engineer, Software Requirements
Enterprise Architect
Firmware Engineer
Game Developer
Game Engineer
Implementation Specialist
Information Architect
Information Technology Analyst (IT Analyst)
Information Technology Consultant (IT Consultant)
Information Technology Specialist, Software Engineering, Applications
Internet Application Developer
Internet Consultant
Internet Site Designer
Java Programmer
Lotus Notes Developer
Microsoft Certified Systems Engineer (MSCE)
Program Analyst
Programmer Analyst
Quality Assurance Analyst (QA Analyst)
Quality Assurance Engineer (QA Engineer)
Quality Assurance Specialist, Applications
Software Analyst
Software Applications Specialist
Software Architect
Software Designer
Software Developer
Software Development Engineer
Software Development Specialist
Software Engineer
Software Installer
Software QA Tester
Software Quality Assurance Specialist
Software Quality Engineer
Software Systems Engineer
Software Writer
Solutions Architect
Supervisor, Software Engineering
Supplier Quality Engineer
Systems Administrator
Systems Analyst
Technical Support Engineer
Tester, Software
Usability Engineer
Video Game Developer
Video Game Engineer
Video Game Maker
Video Game Programer
Videogame Designer

  • Many of these occupations involve coordinating, supervising, managing, or training others. Examples include accountants, human resource managers, computer programmers, teachers, chemists, and police detectives.
  • Most of these occupations require a four - year bachelor's degree, but some do not.
  • A minimum of two to four years of work-related skill, knowledge, or experience is needed for these occupations. For example, an accountant must complete four years of college and work for several years in accounting to be considered qualified.
  • Employees in these occupations usually need several years of work-related experience, on-the-job training, and/or vocational training.

Most employers prefer applicants who have at least a bachelor’s degree and experience with a variety of computer systems and technologies. In order to remain competitive, computer software engineers must continually strive to acquire the latest technical skills. Advancement opportunities are good for those with relevant experience.

Education and training. Most employers prefer applicants who have at least a bachelor’s degree and broad knowledge of, and experience with, a variety of computer systems and technologies. The usual college major for applications software engineers is computer science or software engineering. Systems software engineers often study computer science or computer information systems. Graduate degrees are preferred for some of the more complex jobs. In 2006, about 80 percent of workers had a bachelor’s degree or higher.

Academic programs in software engineering may offer the program as a degree option or in conjunction with computer science degrees. Because of increasing emphasis on computer security, software engineers with advanced degrees in areas such as mathematics and systems design will be sought after by software developers, government agencies, and consulting firms.

Students seeking software engineering jobs enhance their employment opportunities by participating in internships or co-ops. These experiences provide students with broad knowledge and experience, making them more attractive to employers. Inexperienced college graduates may be hired by large computer and consulting firms that train new employees in intensive, company-based programs.

Certification and other qualifications. Systems software vendors offer certification and training programs, but most training authorities say that program certification alone is not sufficient for the majority of software engineering jobs.

People interested in jobs as computer software engineers must have strong problem-solving and analytical skills. They also must be able to communicate effectively with team members, other staff, and the customers they meet. Because they often deal with a number of tasks simultaneously, they must be able to concentrate and pay close attention to detail.

As technology advances, employers will need workers with the latest skills. Computer software engineers must continually strive to acquire new skills if they wish to remain in this dynamic field. To help keep up with changing technology, workers may take continuing education and professional development seminars offered by employers, software vendors, colleges and universities, private training institutions, and professional computing societies. Computer software engineers also need skills related to the industry in which they work. Engineers working for a bank, for example, should have some expertise in finance so that they understand banks’ computer needs.

Advancement. As with most occupations, advancement opportunities for computer software engineers increase with experience. Entry-level computer software engineers are likely to test designs. As they become more experienced, engineers may begin helping to design and develop software. Eventually, they may advance to become a project manager, manager of information systems, or chief information officer, especially if they have business skills and training. Some computer software engineers with several years of experience or expertise find lucrative opportunities working as systems designers or independent consultants.

Nature of Work

Computer software engineers apply the principles of computer science and mathematical analysis to the design, development, testing, and evaluation of the software and systems that make computers work. The tasks performed by these workers evolve quickly, reflecting new areas of specialization or changes in technology, as well as the preferences and practices of employers. (A separate section on computer hardware engineers appears in the engineers section of the Handbook.)

Software engineers can be involved in the design and development of many types of software, including computer games, word processing and business applications, operating systems and network distribution, and compilers, which convert programs to machine language for execution on a computer.

Computer software engineers begin by analyzing users’ needs, and then design, test, and develop software to meet those needs. During this process they create the detailed sets of instructions, called algorithms, that tell the computer what to do. They also may be responsible for converting these instructions into a computer language, a process called programming or coding, but this usually is the responsibility of computer programmers. (A separate section on computer programmers appears elsewhere in the Handbook.) Computer software engineers must be experts in operating systems and middleware to ensure that the underlying systems will work properly.

Computer applications software engineers analyze users’ needs and design, construct, and maintain general computer applications software or specialized utility programs. These workers use different programming languages, depending on the purpose of the program. The programming languages most often used are C, C++, and Java, with Fortran and COBOL used less commonly. Some software engineers develop both packaged systems and systems software or create customized applications.

Computer systems software engineers coordinate the construction, maintenance, and expansion of an organization’s computer systems. Working with the organization, they coordinate each department’s computer needs—ordering, inventory, billing, and payroll recordkeeping, for example—and make suggestions about its technical direction. They also might set up the organization’s intranets—networks that link computers within the organization and ease communication among various departments.

Systems software engineers also work for companies that configure, implement, and install the computer systems of other organizations. These workers may be members of the marketing or sales staff, serving as the primary technical resource for sales workers. They also may help with sales and provide customers with technical support. Since the selling of complex computer systems often requires substantial customization to meet the needs of the purchaser, software engineers help to identify and explain needed changes. In addition, systems software engineers are responsible for ensuring security across the systems they are configuring.

Computer software engineers often work as part of a team that designs new hardware, software, and systems. A core team may comprise engineering, marketing, manufacturing, and design people, who work together to release a product.

Work environment. Computer software engineers normally work in clean, comfortable offices or in laboratories in which computer equipment is located. Software engineers who work for software vendors and consulting firms frequently travel overnight to meet with customers. Telecommuting is also becoming more common, allowing workers to do their jobs from remote locations.

Most software engineers work at least 40 hours a week, but about 17 percent work more than 50 hours a week. Software engineers also may have to work evenings or weekends to meet deadlines or solve unexpected technical problems.

Like other workers who spend long hours typing at a computer, software engineers are susceptible to eyestrain, back discomfort, and hand and wrist problems such as carpal tunnel syndrome.

Related Occupations

Sources: Career Guide to Industries (CGI), Occupational Information Network (O*Net), Occupation Outlook Handbook (OOH)

In May 2006, median annual earnings of wage-and-salary computer applications software engineers were $79,780. The middle 50 percent earned between $62,830 and $98,470. The lowest 10 percent earned less than $49,350, and the highest 10 percent earned more than $119,770. Median annual earnings in the industries employing the largest numbers of computer applications software engineers in May 2006 were as follows:

Software publishers $84,560
Computer systems design and related services 78,850
Management, scientific, and technical consulting services 78,850
Management of companies and enterprises 78,580
Insurance carriers 74,230

In May 2006, median annual earnings of wage-and-salary computer systems software engineers were $85,370. The middle 50 percent earned between $67,620 and $105,330. The lowest 10 percent earned less than $53,580, and the highest 10 percent earned more than $125,750. Median annual earnings in the industries employing the largest numbers of computer systems software engineers in May 2006 are as follows:

Research and development in the physical, engineering, and life sciences $97,220
Scientific research and development services 97,180
Computer and peripheral equipment manufacturing 93,240
Software publishers 87,450
Computer systems design and related services 84,660
Data processing, hosting, and related services 78,270

According to the National Association of Colleges and Employers, starting salary offers for graduates with a bachelor’s degree in computer engineering averaged $56,201 in 2007. Starting salary offers for graduates with a bachelor’s degree in computer science averaged $53,396.

According to Robert Half Technology, starting salaries for software engineers in software development ranged from $66,500 to $99,750 in 2007. For network engineers, starting salaries ranged from $65,750 to $90,250.

For the latest wage information:

The above wage data are from the Occupational Employment Statistics (OES) survey program, unless otherwise noted. For the latest National, State, and local earnings data, visit the following pages:

  • Computer software engineers, applications
  • Computer software engineers, systems software
  • Job Outlook

    Job prospects should be excellent, as computer software engineers are expected to be among the fastest-growing occupations through the year 2016.

    Employment change. Employment of computer software engineers is projected to increase by 38 percent over the 2006 to 2016 period, which is much faster than the average for all occupations. This occupation will generate about 324,000 new jobs, over the projections decade, one of the largest employment increases of any occupation.

    Employment growth will result as businesses and other organizations adopt and integrate new technologies and seek to maximize the efficiency of their computer systems. Competition among businesses will continue to create incentive for sophisticated technological innovations, and organizations will need more computer software engineers to implement these changes.

    Demand for computer software engineers will also increase as computer networking continues to grow. For example, expanding Internet technologies have spurred demand for computer software engineers who can develop Internet, intranet, and World Wide Web applications. Likewise, electronic data-processing systems in business, telecommunications, government, and other settings continue to become more sophisticated and complex. Implementing, safeguarding, and updating computer systems and resolving problems will fuel the demand for growing numbers of systems software engineers.

    New growth areas will also continue to arise from rapidly evolving technologies. The increasing uses of the Internet, the proliferation of Web sites, and mobile technology such as wireless Internet have created a demand for a wide variety of new products. As individuals and businesses rely more on hand-held computers and wireless networks, it will be necessary to integrate current computer systems with this new, more mobile technology.

    In addition, information security concerns have given rise to new software needs. Concerns over cyber security should result in businesses and government continuing to invest heavily in software that protects their networks and vital electronic infrastructure from attack. The expansion of this technology in the next 10 years will lead to an increased need for computer engineers to design and develop the software and systems to run these new applications and integrate them into older systems.

    As with other information technology jobs, outsourcing of software development to other countries may temper somewhat employment growth of computer software engineers. Firms may look to cut costs by shifting operations to foreign countries with lower prevailing wages and highly educated workers. Jobs in software engineering are less prone to being offshored than are jobs in other computer specialties, however, because software engineering requires innovation and intense research and development.

    Job prospects. As a result of rapid employment growth over the 2006 to 2016 decade, job prospects for computer software engineers should be excellent. Those with practical experience and at least a bachelor’s degree in computer engineering or computer science should have the best opportunities. Employers will continue to seek computer professionals with strong programming, systems analysis, interpersonal, and business skills. In addition to jobs created through employment growth, many job openings will result from the need to replace workers who move into managerial positions, transfer to other occupations, or leave the labor force. Consulting opportunities for computer software engineers also should continue to grow as businesses seek help to manage, upgrade, and customize their increasingly complicated computer systems.


    Computer software engineers held about 857,000 jobs in 2006. Approximately 507,000 were computer applications software engineers, and about 350,000 were computer systems software engineers. Although they are employed in most industries, the largest concentration of computer software engineers—more than 29 percent—is in computer systems design and related services. Many computer software engineers also work for establishments in other industries, such as software publishers, government agencies, manufacturers of computers and related electronic equipment, financial institutions, insurance providers, and management of companies and enterprises.

    An increasing number of computer software engineers work as independent consultants on a temporary or contract basis, many of whom are self-employed. About 17,000 computer software engineers were self-employed in 2006.

    • Mathematics — Knowledge of arithmetic, algebra, geometry, calculus, statistics, and their applications.
    • Engineering and Technology — Knowledge of the practical application of engineering science and technology. This includes applying principles, techniques, procedures, and equipment to the design and production of various goods and services.
    • Sales and Marketing — Knowledge of principles and methods for showing, promoting, and selling products or services. This includes marketing strategy and tactics, product demonstration, sales techniques, and sales control systems.
    • Medicine and Dentistry — Knowledge of the information and techniques needed to diagnose and treat human injuries, diseases, and deformities. This includes symptoms, treatment alternatives, drug properties and interactions, and preventive health-care measures.
    • Physics — Knowledge and prediction of physical principles, laws, their interrelationships, and applications to understanding fluid, material, and atmospheric dynamics, and mechanical, electrical, atomic and sub- atomic structures and processes.
    • Equipment Maintenance — Performing routine maintenance on equipment and determining when and what kind of maintenance is needed.
    • Coordination — Adjusting actions in relation to others' actions.
    • Active Learning — Understanding the implications of new information for both current and future problem-solving and decision-making.
    • Writing — Communicating effectively in writing as appropriate for the needs of the audience.
    • Troubleshooting — Determining causes of operating errors and deciding what to do about it.
    • Near Vision — The ability to see details at close range (within a few feet of the observer).
    • Stamina — The ability to exert yourself physically over long periods of time without getting winded or out of breath.
    • Explosive Strength — The ability to use short bursts of muscle force to propel oneself (as in jumping or sprinting), or to throw an object.
    • Oral Comprehension — The ability to listen to and understand information and ideas presented through spoken words and sentences.
    • Hearing Sensitivity — The ability to detect or tell the differences between sounds that vary in pitch and loudness.
    • Supplemental — Specify power supply requirements and configuration.
    • Core — Analyze user needs and software requirements to determine feasibility of design within time and cost constraints.
    • Supplemental — Recommend purchase of equipment to control dust, temperature, and humidity in area of system installation.
    • Core — Consult with customers about software system design and maintenance.
    • Core — Coordinate software system installation and monitor equipment functioning to ensure specifications are met.
    • Monitoring and Controlling Resources — Monitoring and controlling resources and overseeing the spending of money.
    • Guiding, Directing, and Motivating Subordinates — Providing guidance and direction to subordinates, including setting performance standards and monitoring performance.
    • Assisting and Caring for Others — Providing personal assistance, medical attention, emotional support, or other personal care to others such as coworkers, customers, or patients.
    • Repairing and Maintaining Electronic Equipment — Servicing, repairing, calibrating, regulating, fine-tuning, or testing machines, devices, and equipment that operate primarily on the basis of electrical or electronic (not mechanical) principles.
    • Getting Information — Observing, receiving, and otherwise obtaining information from all relevant sources.
    Related College Curriculum
    Featured Online Colleges
    For more online colleges, click here.
    Colleges Offering Curriculum

    10246 Computer Software Engineers, Application Jobs Found

    Looking for a challenge? Join a team that is developing innovations to drive the next generation of autonomous mobility. Our client is a cutting ed...
    Career Direction Inc - MI - Ann Arbor - posted 9 days ago
    Embedded Software Engineer SUMMARY: The Embedded Software Engineer is responsible for the design,implementation, and maintenance of the operating s...
    Accu-Time Systems - CT - Hartford - posted 16 days ago
    AMAZING OPPORTUNITY – Immediate Interview & Start – CALL MONDAY TO BE ELIGIBLE FOR A SIGNING BONUS Kinetix Technology® is a national IT professiona...
    Kinetix Technology - DC - Washington - posted 21 days ago
    AMAZING OPPORTUNITY – Immediate Interview & Start – CALL MONDAY TO BE ELIGIBLE FOR A SIGNING BONUS Kinetix Technology® is a national IT professiona...
    Kinetix Technology - DC - Washington - posted 21 days ago
    SiliconValley, Austin TX, Boston MA, Portland OR Multiplepositions and locations available. Principal and Architect levels Job Duties: Key contribu...
    CAE Recruiters - TX - Austin - posted 18 days ago
    SiliconValley, Austin TX, Boston MA, Portland OR Multiplepositions and locations available. Principal and Architect levels Job Duties: Key contribu...
    CAE Recruiters - MA - Waltham - posted 18 days ago
    SiliconValley, Austin TX, Boston MA, Portland OR Multiplepositions and locations available. Principal and Architect levels Job Duties: Key contribu...
    CAE Recruiters - OR - Portland - posted 18 days ago
    SiliconValley, Austin TX, Boston MA, Portland OR Multiplepositions and locations available. Principal and Architect levels Job Duties: Key contribu...
    CAE Recruiters - CA - San Jose - posted 18 days ago
    DUTIES AND RESPONSIBILITIES: Developing software for ground based workstations that function as pilot and crew interface to the aircraft as well as...
    Aerotek - San Diego - posted 4 days ago
    Software Engineers needed for IT Vision, Inc in Cary, NC with exp using Web based "Pega RULES Process Commander® application (PRPC)" , COBOL,IMS,DB...
    ITVision Inc - NC - Cary - posted 26 days ago

    More Computer Software Engineers, Application Job Results...