What Does a Software Quality Assurance (QA) Engineer Do?

Learn About the Salary, Required Skills, & More

A day in the life of a software quality assurance engineer: Identify bugs and potential problems within software, plan and perform different stages of testing, develop new tools, technology and testing processes, document test progress and results

The Balance / Jo Zixuan Zhou

A software quality assurance (QA) engineer monitors every phase of the development process to ensure that the design and software adhere to company standards. Software delays are costly for a company, so it's vital for releases to meet target dates and stay within budget.

A software quality assurance engineer helps meet deadlines by breaking up the development process into attainable testing goals and relaying any issues back to the development and product teams or leaders.

Software Quality Assurance (QA) Engineer Duties & Responsibilities

A QA engineer's duties can be diverse and comprehensive. They generally perform the following tasks with some regularity:

  • Design and execute systems to check for issues
  • Document test cases
  • Perform and document risk analysis
  • Record test progress and results
  • Code automated tests
  • Create test plans
  • Develop standards and procedures to determine product quality and release readiness
  • Discover bugs within software
  • Drive innovation and streamline overall testing processes
  • Identify, isolate, and track bugs throughout testing
  • Identify any potential problems that users might encounter
  • Perform manual and automated testing
  • Research and analyze product features being tested
  • Research new tools, technologies, and testing processes
  • Review user interfaces for consistency and functionality

Software Quality Assurance (QA) Engineer Salary

Software and computer technology tend to be higher paying fields.

  • Median Annual Pay: $110,140
  • Top 10% Annual Pay: More than $170,100
  • Bottom 10% Annual Pay: Less than $65,210

Education, Training & Certification

A QA engineer should have a thorough understanding of QA testing environments and software development life cycles. Education and licensing are also required.

  • Education: Jobs in this field usually require at least a bachelor’s or master's degree in software design, engineering, or computer science. Approximately 70% of those working as QA engineers have at least a bachelor's degree.
  • Experience: Prior practical experience can be valuable, so you might consider working a series of internships while in school. Gain an understanding of software QA methodologies, tools, and processes, knowledge of SQL and scripting, working experience in software development and software quality assurance, and keep current with current trends and latest advancements. The state of the art in computer programming can change rapidly.
  • Licensing: There is no license or certification required for this position.

Software Quality Assurance (QA) Engineer Skills & Competencies

A software quality assurance engineer must have strong skills in a variety of categories: engineering and technology, math and science, verbal and written communication, problem-solving, reasoning and logic, and practical skills. These can include:

  • Communication skills: Clear and accurate written and verbal communication is a must, but a quality software assurance engineer must also have more than a little tact. Your job will be to tell other professionals that they've done something wrong and that the program or app they’ve put time, money, and emotion into creating doesn’t work right. That’s something nobody wants to hear.
  • Ability to work as part of a team: You might not be the only software quality assurance engineer at your company, and you'll certainly be working with other programmers and members of other departments. You must understand and appreciate their goals and objectives and, in some cases, explain problems and necessary solutions.
  • Time management skills: Part of working on a team means working within other people’s timelines and finishing your work within reasonable deadlines. You won’t know when a problem might arise, so keeping on schedule can require strong time management skills.

Job Outlook

Job growth in this field is expected to be about 22% through 2030. It's expected that more than 189,200 jobs should be added from 2020 through 2030.

Software Quality Assurance Analysts and Testers is a "Bright Outlook" occupation that is expected to grow rapidly or have a large number of job openings in the next several years.

Work Environment

Software quality engineers work in a variety of fields. You might find them assessing whether an airplane's control system meets required performance standards, designing a plan to test potential human errors in an automated system for drug delivery, or making sure a video game won't crash just when you're about to take out the bad guy.

You'll spend some of your time alone, on the computer, analyzing information and solving problems, but this isn't to say that you'll work in a human void. Approximately 85% of those working in this position report that they have face-to-face contact with others every day. About 77% say that they spend the vast majority of their days seated, however.

Work Schedule

This is generally a full-time position, but it can depend on the company. Some smaller firms might not have needs that require a full-time staff in this capacity.

Comparing Similar Jobs

Related career paths, listed with median annual salaries, include: