Learning Track
Software Engineering
The practices, judgment, and process that turn coders into engineers.
A parent track containing 5 sub-tracks: Engineering Fundamentals, Git and GitHub Pro, System Design, Testing, and Agile and Engineering Process. Independent paths; complete all five for the full Software Engineering certification.
Sub-Tracks
DRY, SOLID, debugging, testing, code review.
The five practices that separate engineers who ship from engineers who ship things that survive: principles, readability, debugging, testing, and code review.
First lesson: Software Engineering vs Programming
Use Git like a working engineer; configure GitHub like a team.
Git internals, branching strategies, rebasing vs merging, protected branches + CODEOWNERS, GitHub Actions in depth, and monorepos with Turborepo. Ends with a passion project that hardens a real GitHub repo.
First lesson: Git Internals: Commits, Trees, and Blobs
The most-tested topic in senior engineering interviews.
Scalability, databases at scale, caching, load balancing, message queues, rate limiting, microservices vs monolith, and three canonical design problems (URL shortener, notification system, Twitter feed).
First lesson: What System Design Is and Why It Matters
The skill that is undertaught, overasked-about, and separates pros from amateurs.
The testing pyramid, unit testing in JavaScript/TypeScript and Python, integration testing, end-to-end testing with Playwright, test-driven development, and running tests in CI. Ends with a passion project that adds a full test suite to a real codebase.
First lesson: Why Testing Matters and the Testing Pyramid
Scrum, Kanban, retros, DORA metrics, working with PMs and designers.
The cross-functional skills that determine whether you get promoted. Agile values vs mythology, Scrum and Kanban, writing tickets, working with PMs, and engineering metrics that matter.
First lesson: What Agile Actually Is vs the Mythology