Defining the Quality Roles and Why You Should Care About Both
Guest Post by Heather Wilcox, Staff Engineer at NWEA
The day I decided I wanted to be a Quality Engineer, I was having a “1 on 1” meeting with my manager about my goals. I was explaining that I’d lost interest in the management track and was more interested in making a difference in our quality processes. I wanted to contribute at a higher level than just within my team – I wanted to advance from working as a Quality Assurance Engineer to being a Quality Engineer.
There. I’d said it. And then I realized I hadn’t given a ton of thought to what it meant to be a Quality Engineer. In my mind, it meant that I would be thinking about quality at a higher level than just my particular product line. But is that really what a “Quality Engineer” does or was that idea just something I’d made up for myself? Turns out, it was a little bit of both.
After a little research, I found the following definitions:
Quality assurance engineers, also known as QA engineers, track the development process of a product from start to finish. They oversee production, testing each part to ensure it meets company standards before moving to the next phase. … QA engineers are most commonly utilized by manufacturing and software companies. (ZipRecruiter)
A Quality Engineer works within the quality team to ensure the overall quality of a manufactured product and is tasked with creating documentation, devising quality tests and defining the criteria a test result should meet. They play a key role in fixing issues when they arise. (GetReskilled)
Quality engineering is the discipline of engineering concerned with the principles and practice of product and service quality assurance and control. In the software development, it is the management, development, operation and maintenance of IT systems and enterprise architectures with a high quality standard. (Wikipedia)
A Fine Line
The definitions are almost the same, but not quite. “Quality Engineering” seemed to be the higher level job description that I was after. For the sake of argument, let us separate Quality Engineer and Quality Assurance Engineer into two roles and define them.
Quality Engineer: One who focuses on Quality Engineering – The principles and practice of product and service quality assurance and control.
Quality Assurance Engineer: On who focuses on testing the quality of a product from start to finish throughout the development or production process.
In practice, as we prepare to test and then run those tests, we should maintain the mindset of a Quality Assurance Engineer. However, we also need to spend time thinking about things from the perspective of a Quality Engineer. Having said all that, I know that many of you are thinking: “Well that sounds great, but what does it actually mean?”
The Best Possible Job
As Testers or QA Engineers, our Number 1 goal is to make sure that the test plans, automation, and test cases we assemble do the best possible job of verifying the quality of the product and rooting out as many defects as we can. It also means that we also need to think about the bigger picture by asking questions like: How can we improve processes to make our jobs easier and more effective? It’s great that we have automation, but is our automation really testing the right things? Are we documenting the right things? Are we documenting enough? Are all our teams working in a similar enough manner that a person can transfer from one team to another and that person would only need to learn the code base and not the processes around developing it?
As front-line Engineers, we’re often too close to the problems to see that they exist. But having someone that is knowledgeable about how your teams work and about Quality Processes who can look at the big picture and analyze both quality trends and anti-patterns to look for areas of improvement can be immensely valuable.
The Next Level
When I got the idea for this article a year ago, I had mostly theories without a ton of data to back them up – at least in my experience. Between then and now, however, my company implemented a Quality Control Team. The four of us have been on the job for about 6 months. In that time, we’ve performed multiple Root Cause Analyses, introduced unified processes for defect creation, testing processes, and documentation. We’ve used defect escape data to identify areas where testing is weak. We’re about to launch a new, streamlined defect triage process along with a new bug entry form that makes defect creation easier and encourages people to include all the right information.
Slowly but surely, we’re making improvements and our co-workers don’t hate us too much. In fact, many of them are happy because we’re getting rid of some of the more oppressive processes and replacing them with lighter weight ones that are easier to use and are more intuitive. Our Managers and Executives are happier because we’re starting to provide them with data that measures our quality and can help them coach teams and make go/no-go decisions.
Depending on the size of your company, you may or may not need an actual Quality control team, or even a Quality Engineer. However, all of us in the Quality Business should take some time on a regular basis to think about the big picture that is Quality Engineering. You won’t be sorry that you did.