roadmaps / qa-engineer
How to become a QA engineer
A practical, stage-by-stage path from complete beginner to employable software tester: the skills, the mindset, and free resources at every step. No computer science degree required.
› Work through the stages in order — early ones build vocabulary, later ones make you hard to replace.
› Every resource here is free. Mark a stage passed when you can explain its skills to someone else.
› "Learn testing" is vague advice. This page exists so you always know your next concrete step.
STAGE 01 / 08
Foundations & the testing mindset
Before any tool or technique, testing is a way of thinking. A good tester is professionally skeptical: they ask "what could go wrong?", "what did the requirements forget to say?", and "what happens if the user does the unexpected?". Your first goal is to internalize why software fails. Quality isn't the absence of bugs. It's whether the product does what users need, reliably.
Learn the core vocabulary: verification vs. validation, the seven principles of testing, the software testing life cycle (STLC), and where testing sits within the SDLC. This shared language is what lets you communicate with developers and hiring managers credibly.
- roadmap.sh — QA roadmap ↗An interactive, community-maintained visual map of QA skills — a great big-picture companion to this page.roadmap.sh
- Ministry of Testing ↗The largest software testing community — free articles, a "Dojo" of lessons, and a welcoming forum for beginners.ministryoftesting.com
- ISTQB — Foundation Level syllabus ↗The industry-standard certification body. Even if you don't sit the exam, the free syllabus is a superb structured glossary of testing fundamentals.istqb.org
STAGE 02 / 08
Manual & functional testing
Manual testing is where every tester starts and where the craft lives. Learn the levels (unit, integration, system, acceptance) and types (functional, regression, smoke, sanity, exploratory) of testing, then practice on real software: pick any open web app and try to break it. Do it deliberately, take notes, and look for the paths a normal user never would.
Exploratory testing deserves special attention: it's structured curiosity, not random clicking. Charter a session ("explore checkout with invalid payment data"), time-box it, and record what you find.
- Test Automation University ↗Free, high-quality video courses — despite the name it covers manual foundations, exploratory testing, and more.testautomationu.applitools.com
- Guru99 — software testing tutorial ↗A plain-language, example-heavy walkthrough of manual testing concepts, levels, and types.guru99.com
STAGE 03 / 08
Test design techniques
This is what separates a tester from someone who clicks around. Test design techniques let you find the most bugs with the fewest tests: equivalence partitioning, boundary value analysis, decision tables, state transition testing, and pairwise testing. Interviewers love these because they reveal how you think.
Practice by taking a simple form (say, an age field that accepts 18 to 65) and deriving the minimal set of tests that covers it. Then do it for a login flow, then a shopping cart.
- Ministry of Testing Dojo — test design lessons ↗Practical lessons on applying design techniques to real features, with worked examples.ministryoftesting.com
- Test Automation University — test design courses ↗Free courses walking through the classic design techniques with exercises.testautomationu.applitools.com
STAGE 04 / 08
Bug reporting, tools & agile
A bug you can't communicate is a bug that won't get fixed. Learn to write reports developers thank you for: a crisp title, exact steps to reproduce, expected vs. actual behavior, environment details, and severity vs. priority. Then learn the tools where this work happens: Jira for tracking, TestRail-style tools for test management, and browser DevTools for investigating what's actually going wrong.
Finally, understand where QA fits in agile teams: sprints, stand-ups, the definition of done, and shift-left testing. Most job interviews probe this.
STAGE 05 / 08
API testing
Testing below the UI is faster, more stable, and increasingly what employers screen for. Learn how HTTP works (methods, status codes, headers), what REST APIs are, and how to read and write JSON. Then get hands-on with Postman: send requests, assert on responses, and chain calls into collections.
STAGE 06 / 08
Test automation
Automation is where salaries jump. Pick one language (JavaScript or Python are the friendliest starts) and learn programming basics: variables, loops, functions, and version control with Git. Then learn a modern framework. Playwright is the current best first choice; Selenium is still worth knowing since so much of the industry runs on it.
Build a small portfolio project: automate the critical user journeys of a demo site, push it to GitHub with a readable README, and you have something concrete to show interviewers.
- Playwright documentation ↗Excellent official docs with a built-in test runner, trace viewer, and code generation to lower the entry bar.playwright.dev
- TAU — automation learning paths ↗Structured free paths for JavaScript, Python, and Java automation from beginner to advanced.testautomationu.applitools.com
- Selenium documentation ↗The long-standing standard for browser automation — still everywhere in job listings.selenium.dev
STAGE 07 / 08
CI/CD, performance & security
Tests that only run on your laptop don't count. Learn to run your suite in a pipeline with GitHub Actions, understand what makes tests flaky, and how teams gate releases on green builds. Then broaden into the two specialties every senior tester can at least speak to: performance testing (load, stress, and the metrics that matter) with k6 or JMeter, and security basics via the OWASP Top 10.
- GitHub Actions documentation ↗Free and ubiquitous — get your Playwright suite running on every push.docs.github.com
- k6 documentation ↗A modern, scriptable load-testing tool with a gentle learning curve and great docs.grafana.com
- OWASP Top 10 ↗The canonical list of web security risks — the shared vocabulary of security testing.owasp.org
STAGE 08 / 08
Specialize & keep growing
Once you're job-ready, depth beats breadth. Pick a specialization that fits your interests and market: mobile testing, accessibility, performance engineering, security, or SDET-style test infrastructure. Follow practitioners' blogs, contribute to open-source test projects, and keep a learning log. The testers who grow fastest are the ones who stay curious in public.