With the rise in tech jobs, more people are looking at becoming a QA analyst. But before you take the plunge and set off on such a career path, you might want to do some research on what exactly a quality assurance analyst does.
In the grand scheme of things, a good QA analyst is curious about how technology works, enjoys delving into the nitty-gritty, and is a natural problem solver. The job requires a lot of time planning how to best test computer software, and solving the problems that arise.
Becoming a QA Analyst Might Be Right For You If You…
…are a stickler for detail
…aren’t afraid to critique other people’s work.
…have strong communication skills.
…have an interest in technology.
…love to solve problems.
What is QA?
Before I answer what a QA analyst does, I should first explain what QA is and what QA stands for. Quality assurance is a system of testing which guarantees that the customer is given high quality software that’s free of critical errors. QA testers dream of releasing a piece of software completely free of bugs, however, they are a fact of life in software development. Their goal, like the development team, is to release the highest quality product possible. Every software company, from the big tech giants such as Amazon and Google to small start-ups, uses QA.
What Does a QA Analyst Do?
A QA analyst breaks things. They break things on purpose so the customer doesn’t break them by accident.
However, a QA analyst doesn’t break things recklessly. Quality assurance testing is a methodical process that requires planning, careful execution, and documentation.
QA testers play an important part in a product’s development. They ensure the final product meets the requirements set out by the client, and reduce the numbers of errors software. QA analysts are the first ones to encounter anything that might make the user experience worse. After testing the software, a QA analyst will document any problems they had and send the report to the developers who revise the software. This cycle of development and testing continues until the QA analyst (or team of QA analysts) are satisfied with the final product and give it their stamp of approval. Once the QA analyst signs off on a product, it’s considered ready for release.
GRAPHIC: Software Development Stages: Developer sends software to QA Analyst for testing > QA Analyst tests software and reports bugs back to developer > Developer fixes software and sends back to QA Analyst > QA Analyst tests for bugs, signs off on product if bugs are fixed > Software is released to public.
A QA analyst focuses on total quality management. Again, a QA analyst is a stickler for detail, a born problem solver and loves to maximize efficiency to sustain a high level of quality across the software development cycle`. It’s not enough to test and break software (though it’s always satisfying when something breaks), a QA analyst also wants to optimize the process for testing and developing software. To do this, they work closely with other members of the quality assurance team. In short, QA analysts are in both the problem solving and problem prevention business.
What Is QA Testing?
QA testing describes the process of finding and fixing errors in the program’s code and documenting the process and cause of the error. It’s also concerned with the process behind the creation of software and seeks to isolate areas in the development cycle that can be improved and optimized. There are many different strategies involved in QA testing. For example, the Capability Maturity Model Integration (CCMI) was developed by the software engineering division at Carnegie Mellon University and is based on the principle that “the quality of a system or product is highly influenced by the process used to develop and maintain it.”
The CMMI model ranks the maturity of areas within an organization and identifies other areas that can be improved upon. The maturity level of an area is decided by how optimized the development process current is. A maturity level of one indicates that the process is not well optimized – often unpredictable and uncontrolled, while a maturity of level of five indicates that the process is predictable, well controlled, stable, and needs only minor revisions for full optimization.
One popular tool used by QA testers is Selenium, a free browser testing software that can be used across many browsers and platforms. The program was created by Jason Huggins, who at the time was frequently working on web applications that often required testing. While running these tests he noticed that manual testing was inefficient. Frequently he’d spend his days running the exact same tests over and over. It was so repetitive that even a robot could do it. So he created a script that would automatically run the tests. Eventually, this grew into Selenium.
Some of Selenium’s key features include:
Full support of multiple programming languages including Java, python, C#, Ruby, and Php.
Support of both iPhone and Android testing
Can simulate key presses and other keyboard actions.
At some point, most QA and IT companies will use Selenium when they need to automate their web testing. One of Selenium’s most attractive features is its ease of use. When it was introduced, it immediately leapt over many other tried and true testing techniques and became the go-to tool for web automation testing. Recruiters often look for people well versed in the tool.
QA Analyst Day-to-Day
The day-to-day work of a QA analyst will vary depending on the software, where it is in the development cycle, and the structure of the organization they work for. Here’s an example of a recent job posting for a QA analyst.
All jobs will require applicants to have knowledge of several programming languages, to demonstrate an ability to develop strategies for testing software and an ability to work closely with other QA teams.
Over at Gossamer-Threads, Mike Wu has broken down his day as a QA analyst in half hour increments. He spends the first two hours testing the most important tickets in his queue before taking lunch. After having something to eat he spends the rest of his day continuing on those test tickets before leaving himself a list of things to do for the next day.
QA Analyst Jobs & Salary
QA Analyst Jobs
The future for QA analyst jobs is looking good. With the tech and software industries experiencing an extended period of growth there are more and more jobs opening up for QA analysts. In 2017, the Stack Overflow Blog identified QA as one of the fields with the highest demand and lowest supply.
(SOURCE: Stack Overflow Blog)
QA analyst jobs are high demand, low supply, and predicted to become more in demand as the tech industry continues to grow. This is a wonderful cocktail of positives for prospective QA analysts. By becoming a QA analyst you’ll have a wide range of interesting companies and technologies to choose to work with.
The good news continues for QA analysts as a survey by Forbes listed Senior QA Analyst as the second happiest job in the country.
QA Analyst Salary
This leads us to the topic of QA analyst salary. Now, as you might’ve guessed, a career that’s high in demand and low in supply comes with a good salary. The average QA analyst makes $72,750/year, which is well above the national average salary of $31,009.
Many QA analysts become QA managers or lead software specialists, leading to another significant salary bump.
How Do I Become A QA Analyst?
So now that you’ve read a bit about what the day-to-day of a QA analyst is like, and seen the career potential, you want to know how to become a QA analyst. Fortunately, the career path is fairly straightforward.
What Education Does a QA Analyst Need?
Most QA analysts have a bachelor’s degree either in computer science or computer programming. It’s important that QA analysts have a deep understanding of the tools they’re using to test software, which typically requires formal education. Among other things, a QA analyst will want to know about data structures, artificial intelligence and assembly languages.
Unlike other careers in the tech industry, there is no direct education path to becoming a QA analyst. Few schools offer training in QA analysis or QA engineering, as it’s sometimes referred to. For people considering a university education, a bachelor’s degree in computer science is often enough to get started. For people who are either looking to change careers without spending another four years in school, or who simply lack the time or money to attend university, a career as a QA analyst is still in the cards, too. The tech field is becoming less strict about their education requirements, even Google no longer requires a bachelor’s degree for their programmers. An online program that teaches computer software, preferably one which give you a strong portfolio to demonstrate your knowledge of computer systems, will often be enough to make you an attractive candidate.
QA analysts are meant to be jacks of all trades. They’re not programmers (though some do transition into a development role later in their career) so they don’t need complete mastery of programming languages, though they do need to understand how each one works and be able to test it thoroughly.
QA Analyst Job Path
As mentioned earlier, QA analysts are in high demand. Many QA analysts will begin their careers as interns. Others will begin as junior QA team members and work under the direction and guidance of a more experienced member of the QA team. Initially, the junior will be responsible for test case execution, bug checks and reporting. As the junior member becomes more comfortable in the role and requires less supervision, they will be allowed to continue following the test case, testing for bugs and documenting their findings without direct supervision.
After executing tests hundreds of times and becoming more familiar with the various testing tools and techniques at their disposal, the QA member will begin to notice trends about where applications tend to fail, and develop a deeper understanding of product development. Once they’ve reached that stage, they’re ready to take the next step and become QA analysts. They will assume the full responsibility of a QA analyst, which includes:
Planning test cases.
Documenting any bugs or errors.
Communicating with other members of the QA team.
Advice From Industry Experts
Trish Khoo likes to compare testing code to painting. She believes testing is a craft that requires hours and hours of dedication. “You can’t really say to someone ‘just do this and this and now you’re an expert tester’. It’s more like “start by doing this, and do it again and again for years and you’ll get good at it.” And I think that’s why there’s a myth that testing is just some magical ‘mindset’ that some folks are gifted with and others can’t learn. It’s the same when people say art is a talent that folks are just gifted with – it ignores the years of hard work that went into refining that skill, and it prevents people from trying to learn it.”
With over 10 years in the software testing industry, Maaret Pyhäjärvi stresses the value of having a critical mindset. “In the moment, if I would stop analyzing my actions with my most critical mindset, I would be paralyzed, too afraid to do things.”
Want to learn more from QA experts? Check out our list of The Top QA Influencers & Best Software Testing Blogs of 2019
What Do You Think?
In the tech industry, QA is one of many potential career paths. Does becoming a QA analyst sound interesting to you? Let me know in the comments.