Qs and how to A them, a non-QA-engineer's perspective ;)

QA is a somewhat tricky skillset to describe, because there's a ton of loosely-related jobs that fall under that umbrella. Here's the roles I can think of, and skills that come in handy for them… (note: not the skills that are required for them; this is things that might be worth learning, not things you need to know entirely before applying for a job)

Testing (black box)

Given a thing, find, isolate, and describe flaws in that thing

Testing (white box)

Given a thing's code, find, isolate, and describe flaws in internal pieces of that thing


Given a report of a bug, determine whether the bug is real, how severe it is, and who it should be assigned to


Given a report of a bug, make the bug easier to fix by fleshing out the report with steps to reproduce, when it was introduced, possible causes, etc...

Test Automation

Write and maintain programs to automate parts of any of the other QA subroles

Test Infrastructure Administration

Most software teams have some machines running tests automatically on each change they make ("continuous integration"), someone needs to keep those machines running and up to date

Other writing about programming