QA: The Bridge between Dreams and Reality

Valeriya Lazdan
Fender Engineering
Published in
3 min readMar 14, 2023

Successful QA engineers in today’s fast paced tech world are versatile professionals with a combination of technical and soft business skills. QA is much more than sleuthing out defects and writing bug reports. QA engineers have the last word on when a feature is ready for launch and, along with the entire development team, are responsible for consistently delivering high quality product on time. The role of the QA team member is unique however, because while promoting a healthy code base within the development team they also collaborate with devops, platform and marketing departments. QA engineers also provide valuable feedback from the point of view of the product’s end users. Thoroughness of the QA process can mean the difference between a great and exceptional product.

Consider these points to remain a successful engineer in today’s tech industry:

Get involved early and through every stage of the development cycle

One of the easiest ways to save time and effort in later stages is to stay updated and in communication with stakeholders from the start of the development cycle, ideally before kickoff. This not only helps QA team members gain a thorough understanding of the product requirements and business goals, it is instrumental to writing up comprehensive test plans, test cases and identifying edge cases.

Be an effective collaborator and communicator

Through every stage of the development cycle QA engineers provide feedback to product, front and back end developers, devops, and marketing. This includes daily interactions at stand-ups, as well as weekly planning and grooming collaborations. As bugs arise, QA team members help the product team prioritize these defects. Working with marketing involves manual testing to ensure that campaigns are running and reaching users as expected. Working with devops may include performance testing across environments and collaboration to resolve and prevent deployment issues. And while it may not be necessary for QA to have in-depth technical knowledge of the software, it is important to have a basic understanding of how front and backend work together in order to provide valuable feedback to developers.

Become an advocate for automation

Test case automation or end to end testing uses scripts to execute test cases. Automation greatly reduces the need for manual tests while raising the health of the code base and the team’s overall code confidence. There are several benefits to using test case automation. Automated tests can be run much faster than manual tests allowing QA engineers to check more features in less time. Automated tests are executed in the same way each time reducing the risk of human error and improving result accuracy. Automated tests can be designed to cover a wide range of scenarios and edge cases, allowing for thorough testing.

Use a variety of testing techniques

Automated testing is essential to delivering and maintaining high quality code, however it should be used in conjunction with manual tests. According to Mike Cohn’s testing pyramid, unit and integration tests are followed by end to end testing, with manual tests at the top. Automated tests often cannot cover every scenario and high priority defects can be missed if they’re not verified with a manual test. Throughout the development cycle QA engineers write and run a combination of manual and automated test suites.

Test on different platforms

Most large corporations operate mobile and desktop apps in addition to websites. QA engineers may be switching between testing web and mobile platforms on a day to day basis. It is imperative to identify which browsers, devices and operating systems are in use by most of the product’s end users. If a QA team is using the latest devices but most users are on an older device or OS version, they may be missing a large number of defects during testing. Different platforms also have their own automation tools.

Consider accessibility during testing

Most modern development teams are engineering with accessibility at the top of mind. By testing for accessibility QA engineers help ensure that the product is inclusive and available to all users. A combination of compliance tools and manual testing techniques are used to verify that their product is legally compliant and meets accessibility standards.

QA engineers are the unsung heroes of the development world

QA engineers are the vital ingredient to the recipe that creates high quality product and healthy, well-maintained code on any development team. From writing test plans out of technical requirements to unearthing money-saving edge case bugs, it takes a strong combination of technical, business and soft skills to succeed as a QA engineer. So, the next time you are using a well-maintained, error-free app or website, take a moment to appreciate the role of the QA engineer in making it all possible.

--

--