Quality Assurance professionals are amazing. They tend to be detail-oriented while somehow also getting stuff done quickly. They know that their jobs depend on their ability to find the smallest flaw that may end up saving their clients millions down the road. In other words, they work under a lot of pressure while working diligently and efficiently. One of the main reasons they are so good at their jobs is that they are, or at least should be,completely dedicated to their goal of ensuring the quality of the software they are testing. But some companies expect their QA professionals to be both expert testers and master developers. Here’s why they are wrong.
A lot of people expect QA professionals to be on the development side of a project as well, which doesn’t seem to make a lot of sense. If you hire one IT person and then ask them to develop your network as well as build your software, you can expect one of two things to happen: either the job is done quickly but shoddily or it’s done slowly but thoroughly. It’s the same with QA. While QA is important to the development of software, it should be a completely separate process. Your testing team should be left to test, just as your DevOps team should be left to the code’s creation. DevOps can write the code, sure, but when it comes to testing, they can usually only test based on the extent of their knowledge of the software and the way it works. A QA specialist can read the code and anticipate how it may be used by the client and then test it based on its intended use and possible outcomes. Letting each role perform their tasks as they know how acts as a checks and balance that any piece of software needs.
Another reason that it’s important to keep these roles separate is the fact that there is a lot to learn in any given area of the tech industry. If you want your QA specialists to keep up with the current trends in their field, you probably shouldn’t ask them to learn how to code and keep up on all the latest developments in the coding world on top of that. A jack of all trades who knows only surface-level things about many different areas isn’t nearly as valuable as somebody who has in-depth knowledge of a specific discipline. Sure there are plenty of QA specialists who can advise on how a program should be written. But advising and executing are two very different things. Anyone can judge a slam dunk contest, but that doesn’t necessarily mean that they can perform a 360 tomahawk jam in front of thousands of people.
Some people think automations will magically solve all of their problems. QA specialists know how to automate testing. This is one of their specialties and have trained extensively on it. In fact, automating the testing process requires many of the same skills that development does. So why is that many clients want high levels of automation, but are content to pay the QA specialists who develop the automation half of what they would pay a developer? A QA specialist willing to build the automation on top of developing the software for less than you pay a developer is a unicorn–they don’t exist.
The bottom line is that there is too much to lose by asking a QA team to develop, or a team of developers to do testing. Any money you save by combining the two jobs is insignificant compared to the potential money you could lose due to the faulty testing and buggy programs that will be released because your QA team is stressed and out of their depth.
At iLAB we understand how developing software works. We’ve worked with countless developers, but strictly as QA professionals working to innovate QA testing to ensure software of the highest quality. Testing and development goes hand in hand because the better the testing the better the software that’s released. We are the best at our jobs, so developers can be the best at theirs.