Software Testing
Checking that software does what it should — unit, integration and end-to-end tests, plus good bug reports.
Find the bugs before users do, and build the tests that keep them from coming back.
QA and test engineers make sure software actually works. They plan what to test, write automated tests that run on every change, explore new features for edge cases, and write bug reports developers can act on. It suits curious, detail-minded people who enjoy breaking things on purpose, and it's a common path into software development.
Take these courses in order, from beginner to mid-level.
The shared base every STEM career uses: working with numbers and units, testing ideas fairly, handling data and code, and explaining your work.
The everyday computer, internet, safety and AI skills every tech and STEM job assumes you already have.
Learn how the web works and build, style and publish your own responsive website with semantic HTML and modern CSS.
The programming language of the web: variables, functions, the DOM, arrays and objects, and fetching data from APIs.
Write clear emails and documents, present and run meetings, work well on teams, and navigate résumés, interviews and networking.
The practical math behind tech and STEM work: numbers, algebra, functions, geometry, logic and counting, with short code exercises.
Use the terminal with confidence, track your work with Git, and collaborate on GitHub with pull requests.
Learn to program in Python from zero: values, decisions, loops, functions, data structures, files, modules and a small data project.
Query, summarise, join and change data in a relational database with SQL, practised in your browser.
Understand tech roles and career ladders, pick a realistic learning route, build portfolio evidence, and navigate postings, interviews and your first 90 days.
Build interfaces that work for everyone on every screen: WCAG 2.2, keyboard and ARIA, fluid layouts, responsive images and real audits.
Measure efficiency with Big-O, then use searching, sorting, hash maps, stacks, linked lists, trees, graphs and dynamic programming in Python.
Design REST routes, validate JSON, build Node and Express APIs on a SQL database, secure them, test them and ship them.
Design, test, refactor, review, estimate and run software the way professional teams do.
Checking that software does what it should — unit, integration and end-to-end tests, plus good bug reports.
The programming language of the web. Runs in browsers and on servers (via Node.js).
A beginner-friendly, general-purpose language popular in data, AI, and scripting.
The language for asking questions of relational databases. Used everywhere.
The version-control tool every software team uses to track and merge changes.
Breaking big, vague problems into small concrete steps. The most transferable skill in tech.
Hand-picked courses and reading from trusted free providers.
Free certification covering JavaScript fundamentals, ES6, regex, debugging, and algorithm scripting.
Free MIT lectures on the tools real engineers use every day: shell, Git, editors, debugging.
The free official Git book: first commits, branching, remotes, and how Git works under the hood.
Harvard's free intro CS course — widely considered one of the best on-ramps to programming.
Design, write, and test the software people use every day.
Build the servers, APIs, and databases that power apps behind the scenes.
Automate how software is built, shipped, and kept running reliably.