Roadmap · Specialise
QA and test automation
Opens with creditsFor students and early-career engineers who want to work in software quality, from careful manual testing to automated suites with Playwright, Selenium or API tools. By the end you can design tests from requirements, write bug reports that get fixed, automate the important flows in a maintainable suite that runs in CI, and show all of it in a portfolio.
By the end, you will be able to
- Turn a user story into test ideas with partitions, boundaries and risk, and run a timed exploratory session with notes
- Write bug reports with clear steps, evidence and a sensible severity that developers can reproduce in minutes
- Build an automated suite with your chosen tool, structured with page objects or an API client, that runs in GitHub Actions with a readable report
- Diagnose and fix flaky tests, and run basic performance, accessibility and security checks safely
- Show a public portfolio of test suites and bug reports, and apply for QA roles with a clear path towards SDET
The path
8 stages, in the order to learn them. Open one to start.
1Testing fundamentalsWhat testing is for, where it fits in how software is built, and the vocabulary every QA conversation uses: levels, types, the test pyramid and risk.7 topics · ~3 weeks
- 1Why testing existsTesting means running software, or reviewing what it is built from, to find defects (bugs).
- 2SDLC, STLC and where testing fitsThe software development life cycle (SDLC) is the path a product takes from idea to release, and then its upkeep.
- 3Verification and validationVerification asks "did we build it right?".
- 4Test levels: unit, integration, system, acceptanceUnit testing checks one small piece of code, such as a single function.
- 5Functional and non-functional testingFunctional testing checks what the system does: its features, business rules, inputs and outputs.
- 6The test pyramidThe test pyramid is a picture of how to balance automated tests across the test levels.
- 7Risk-based testingYou never have time to test everything.
7 in this stageOpen this stage2Manual testing done wellTurn requirements into test ideas with proven techniques, test with charters as well as cases, and write bug reports that developers can reproduce and fix.8 topics · ~6 weeks
- 1Analysing requirements and acceptance criteriaGood testing starts before any code exists.
- 2Partitions, boundaries and decision tablesTest design techniques turn endless possible inputs into a small, strong set of tests.
- 3Test cases and checklistsA test case is a written test with an ID, a title, preconditions (what must be true before you start), steps, test data and an expected result.
- 4Exploratory testing with chartersExploratory testing means designing and running tests at the same time, using what you learn to choose what to try next.
- 5Bug reports that get fixedA bug report is only useful if someone can make the problem happen again quickly.
- 6Severity, priority and the bug life cycleSeverity is how badly a bug hurts the system.
- 7Smoke, sanity and regression testingA smoke test is a quick check that a new build works at all: the app starts, you can sign in, the main page loads.
- 8Test management and tracking toolsTeams track bugs in an issue tracker, most often Jira.
8 in this stageOpen this stage- Web and API basics for testersHow browsers and servers talk over HTTP, how to watch and question that traffic with DevTools and Postman, and enough SQL to check the data behind the screen.7 topics · ~5 weeksOpens with credits
- Programming for testersLearn the TypeScript that Playwright tests are written in: types, functions, arrays and objects, async and await, classes for page objects, npm, Git and assertions.7 topics · ~3 monthsOpens with credits
- Playwright in depthBuild reliable browser tests with Playwright Test and TypeScript: user-facing locators, auto-waiting, fixtures, debugging with UI mode and traces, network mocking and API calls, and cross-browser projects.7 topics · ~3 monthsOpens with credits
- Maintainable suites in CIStructure your suite so it stays cheap to change, kill flakiness at the cause, and run everything in GitHub Actions in parallel with reports and evidence people can use.7 topics · ~2 monthsOpens with credits
- Performance, accessibility and security awarenessGo beyond functional checks at awareness level: a first load test, automated and manual accessibility checks, and safe security checks on systems you are allowed to test.7 topics · ~4 weeksOpens with credits
- Your QA careerUnderstand the roles, decide honestly about certification, build a portfolio of suites and bug reports, land a first QA role and plan the move towards SDET.7 topics · ~4 weeksOpens with credits
6 more stages, 42 more topics, free with an account.
You have seen the open stages of the QA and test automation roadmap. Every topic it covers is listed above, and an account opens the rest: what each topic means, a question to check yourself, the courses, the practice and Tauseef's advice for every stage. Early access is open: sign up and your account is active shortly after.
Everything here is free to learn from. A few things, like adding a roadmap, keeping a cheat sheet or asking Tauseef a question, use credits. You get 15 when you join, your first roadmap is free, and if you are learning seriously and run out, you can ask for more. Credits only make sure the platform goes to people who are actually learning.
Build a project
A finished project proves more than a certificate.
- Start with this oneintermediate1 semester · 1 to 2 studentsQA Test Suite for an Open Source Web App
The portfolio piece employers ask for: test plan, bug reports and an automated suite in CI on a real open source app
- Playwright or Selenium
- TypeScript or Java
- Playwright API testing or Postman
- GitHub Actions
- axe-core
Related on Sefism
Picked from the other libraries by shared topics.
Best practices
See all- Software Testing Best PracticesTesting best practices for unit, integration and end-to-end tests: test design, test doubles, flaky tests, coverage and fast CI, with examples in TypeScript and Python.
- CI/CD Best PracticesBuild pipelines that are fast, trustworthy and safe to deploy from: trunk-based flow, fast tests, locked-down workflows, signed artifacts, canaries and DORA metrics.
Checklists
See all- LLM Evaluation ChecklistAn LLM evaluation checklist: success criteria, eval datasets, code and model graders, judge calibration, agent evals, safety tests and production monitoring, with how to verify each check.
- Data Quality ChecklistA data quality checklist for warehouse tables: ownership, freshness, volume, schema, nulls, uniqueness, referential checks, anomaly monitoring and data incidents, with how to verify each.
Project structures
See all- React with Vite (TypeScript) project structureFor developers building a single-page React app that talks to a separate backend: an orders dashboard with auth, routing, server data, forms and tests. Product code is grouped by feature under src/features, shared pieces live in components and lib, and src/app wires providers, routes and guards together.
- Next.js (App Router) project structureFor React developers building a real web front end with Next.js: a shop dashboard with public pages, sign-in, orders and products, talking to a separate backend API. The app folder holds routes only, product code lives in feature folders, server-only code sits in src/server, and the browser side gets a proper React setup: providers, TanStack Query, forms with React Hook Form and Zod, and tests from unit to end-to-end.
- Angular project structureFor developers building a structured single-page app with Angular, the framework many enterprise and services companies use. The example is an orders dashboard with a login: standalone components, signals for state, typed forms, lazy-loaded feature routes, and a small core and shared layer around feature folders, grown from the ng new scaffold to a repository a team can run for years.
Career questions
See all- How do I know if code written by an AI tool is actually correct?You check it the same way you check any code, but more carefully: read the whole diff, confirm every function and package exists, run it against tests that could fail, especially one you wrote yourself, try the edge cases, and make sure you can explain every line. Correct means proven by evidence, not "the tool said it works".
- What does an AI evals engineer do?An AI evals engineer designs the tests that tell a team whether an AI system is good enough: the datasets, the scoring (code checks, human review, or a model as a judge), and the process that runs them on every change. It is a real and growing specialism inside AI engineering, and a strong angle for juniors because few people do it well.
- How do I move from QA to software development?Use test automation as the bridge. Write more and better code in your QA role, pick one development stack that matches your product, take small development tasks inside your current team, and ask for an internal move before you apply outside. Your testing mindset is an advantage, not something to hide.
Stuck on something specific?
Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.
- 1:1 Mentorship
- Fresh Graduate Mentorship
- Career Guidance
Brand deals, promos and partnerships: tauseeffayyaz@gmail.com