Software Developers, Quality Assurance Analysts, and Testers
Software developers create the computer applications that allow users to do specific tasks and the underlying systems that run the devices or control networks. Software quality assurance analysts and testers design and execute software tests to identify problems and learn how the software works.
Duties
Software developers typically do the following:
- Analyze users’ needs and then design and develop software to meet those needs
- Recommend software upgrades for customers’ existing programs and systems
- Design each piece of an application or system and plan how the pieces will work together
- Create a variety of models and diagrams showing programmers the software code needed for an application
- Ensure that a program continues to function normally through software maintenance and testing
- Document every aspect of an application or system as a reference for future maintenance and upgrades
Software quality assurance analysts and testers typically do the following:
- Create test plans, scenarios, and procedures for new software
- Identify project risks and recommend steps to minimize those risks
- Implement software testing, using either manual or automated programs and exploratory testing, and evaluate results
- Document and report defects or problems with software
- Provide feedback to software developers and stakeholders regarding usability and functionality
Work Environment
Software developers held about 1.4 million jobs in 2021. The largest employers of software developers were as follows:
Computer systems design and related services | 32% |
Finance and insurance | 11 |
Software publishers | 10 |
Manufacturing | 9 |
Management of companies and enterprises | 5 |
Software quality assurance analysts and testers held about 196,300 jobs in 2021. The largest employers of software quality assurance analysts and testers were as follows:
Computer systems design and related services | 33% |
Finance and insurance | 11 |
Software publishers | 9 |
Administrative and support services | 7 |
Manufacturing | 7 |
Developing software is usually a collaborative process. As a result, developers, quality assurance analysts, and testers work on teams with others who also contribute to designing, developing, and programming successful software.
Work Schedules
Most software developers, quality assurance analysts, and testers work full time.
Education and Training
Software developers, quality assurance analysts, and testers typically need a bachelor’s degree in computer and information technology or a related field. Some employers prefer to hire developers who have a master’s degree.
Education
Software developers, quality assurance analysts, and testers typically need a bachelor's degree in computer and information technology or a related field, such as engineering or mathematics. Computer and information technology degree programs cover a broad range of topics. Students may gain experience in software development by completing an internship, such as at a software company, while in college. For some software developer positions, employers may prefer that applicants have a master’s degree.
Although writing code is not their primary responsibility, developers must have a strong background in computer programming. They usually gain this experience in school. Throughout their career, developers must keep up to date on new tools and computer languages.
Advancement
Software developers can advance to become project management specialists or computer and information systems managers, positions in which they oversee the software development process.
Personality and Interests
Software developers typically have an interest in the Building, Thinking and Organizing interest areas, according to the Holland Code framework. The Building interest area indicates a focus on working with tools and machines, and making or fixing practical things. The Thinking interest area indicates a focus on researching, investigating, and increasing the understanding of natural laws. The Organizing interest area indicates a focus on working with information and processes to keep things arranged in orderly systems.
If you are not sure whether you have a Building or Thinking or Organizing interest which might fit with a career as a software developer, you can take a career test to measure your interests.
Software developers should also possess the following specific qualities:
Analytical skills. Developers must analyze users’ needs and then design software to meet those needs.
Communication skills. Developers must be able to give clear instructions to others working on a project.
Computer skills. Developers must understand computer capabilities and languages in order to design effective software.
Creativity. Developers are the creative minds behind new computer software.
Customer-service skills. Some developers must be able to explain to their customers how the software works and answer any questions that arise.
Detail oriented. Developers often work on many parts of an application or system at the same time and must be able to concentrate and pay attention to detail.
Interpersonal skills. Software developers must be able to work well with others who contribute to designing, developing, and programming successful software.
Problem-solving skills. Because developers are in charge of the software from beginning to end, they must be able to solve problems that arise throughout the design process.
Pay
The median annual wage for software developers was $120,730 in May 2021. The median wage is the wage at which half the workers in an occupation earned more than that amount and half earned less. The lowest 10 percent earned less than $64,470, and the highest 10 percent earned more than $168,570.
The median annual wage for software quality assurance analysts and testers was $98,220 in May 2021. The lowest 10 percent earned less than $48,960, and the highest 10 percent earned more than $153,250.
In May 2021, the median annual wages for software developers in the top industries in which they worked were as follows:
Software publishers | $130,180 |
Manufacturing | 124,950 |
Finance and insurance | 124,390 |
Management of companies and enterprises | 120,710 |
Computer systems design and related services | 103,010 |
In May 2021, the median annual wages for software quality assurance analysts and testers in the top industries in which they worked were as follows:
Manufacturing | $102,090 |
Computer systems design and related services | 98,000 |
Software publishers | 94,980 |
Finance and insurance | 92,660 |
Administrative and support services | 86,060 |
Most software developers, quality assurance analysts, and testers work full time.
Job Outlook
Overall employment of software developers, quality assurance analysts, and testers is projected to grow 25 percent from 2021 to 2031, much faster than the average for all occupations.
About 162,900 openings for software developers, quality assurance analysts, and testers are projected each year, on average, over the decade. Many of those openings are expected to result from the need to replace workers who transfer to different occupations or exit the labor force, such as to retire.
Employment
Increased demand for software developers, software quality assurance analysts, and testers will stem from the continued expansion of software development for artificial intelligence (AI), Internet of Things (IoT), robotics, and other automation applications.
In response to concerns over threats to computer security, organizations are expected to increase investment in software that protects their electronic networks and infrastructure. This investment could result in an increased demand for developers to create security software and for quality assurance analysts and testers to create and execute software tests.
Software developers, software quality assurance analysts, and testers are likely to see new opportunities because of the increasing number of products that use software. For example, software systems continue to be built for consumer electronics and other products, including IoT-connected devices and electric vehicles.
For More Information
For more information about software developers, quality assurance analysts, and testers, visit
Association for Computing Machinery
Association for Software Testing
Computing Research Association
For information about opportunities for women pursuing information technology careers, visit
National Center for Women & Information Technology
FAQ
Where does this information come from?
The career information above is taken from the Bureau of Labor Statistics Occupational Outlook Handbook. This excellent resource for occupational data is published by the U.S. Department of Labor every two years. Truity periodically updates our site with information from the BLS database.
I would like to cite this page for a report. Who is the author?
There is no published author for this page. Please use citation guidelines for webpages without an author available.
I think I have found an error or inaccurate information on this page. Who should I contact?
This information is taken directly from the Occupational Outlook Handbook published by the US Bureau of Labor Statistics. Truity does not editorialize the information, including changing information that our readers believe is inaccurate, because we consider the BLS to be the authority on occupational information. However, if you would like to correct a typo or other technical error, you can reach us at help@truity.com.
I am not sure if this career is right for me. How can I decide?
There are many excellent tools available that will allow you to measure your interests, profile your personality, and match these traits with appropriate careers. On this site, you can take the Career Personality Profiler assessment, the Holland Code assessment, or the Photo Career Quiz.