Return to Main Article – Transferable Skills Guide Overview Sourcing tech professionals with certain emerging or hard-to-find skills can be a challenge – even for the most seasoned recruiter. In the fifth installment of our seven-part “Transferable Skills Guide” series, we look at the Quality Assurance role and skill-sets in other disciplines that translate to success in QA positions. Use these tips to better evaluate tech candidates and build a bigger pipeline of talent. QA Engineer QA engineers are like the safety control folks who check airplanes. It’s their responsibility to make sure everything is correct and operating as expected, so that the passengers (or in your case, users) don’t encounter any issues. If you’re a nontechnical manager who needs to hire a QA engineer, breathe a sigh of relief. Many of the qualities that make a great QA engineer contain a lot less buzzwords than other technical roles. (Thank goodness.) What matters most for someone in QA is their attention to detail, their ability to communicate with their team, and their knack to learn new things quickly. Of course, in the last few years, testing has matured – there are lot more tools and technologies available to make quality testing even easier. PROCESS & AUTOMATION Testing, 1...2...3... Generally a QA engineer is expected to test for issues, create bugs or cases to track them, and manage the overall quality of the feature or product. This means they must have a solid knowledge of how the software works, how defects are being tracked and managed, and how to report back effectively on progress. In certain QA roles, it might also be expected that a candidate be able to automate certain parts of the testing workflow. This can involve using simulators to mimic user clicks, or it can be scripting test cases to call APIs and dive into the database. The details really depend on the specifics of the role. What to look for:
- Bug Tracking – JIRA, FogBugz, Pivotal Tracker, Trac. There are many, many bug tracking systems and all of them work a little differently. Most QA engineers with some experience should have knowledge of at least one of these, if not more.
- Web Browser Automation – Selenium, Watir, Sahi. Each of these are used to test user interfaces in a repeatable and automated way. They allow a tester to create a series of test cases and then simulate a user’s behavior, such as clicking buttons and filling in forms. Experience with one easily translates to another with a few hours of running through online tutorials and training.
- Unit Testing – JUnit, TestNG, PHPUnit, rspec. Each of these unit testing frameworks is used for a different language. Generally, these aren’t transferrable to another, as they tend to function differently and rely on the syntax of the specific programming language. That being said, not all QA roles require the ability to write unit tests using these tools. QA engineers will always have a to learn a lot on the job – by definition they are working with new software all the time so there will always be a learning curve.