Learning paths
Pick a role and follow it step by step — the skills to learn, in order, with curated free resources, hands-on projects, and a clear path to landing the job.
The fundamentals every entry-level software engineer needs: CS basics, a language, version control, data structures, and the job hunt.
5 stages · 15 skills · 13 resources
From HTML/CSS to a modern component framework: build accessible, responsive, production-grade user interfaces.
6 stages · 17 skills · 16 resources
Build the servers, APIs, and data layers behind the product: a server language, databases, authentication, and deployment.
5 stages · 14 skills · 10 resources
Ship complete products end-to-end: frontend UI, backend APIs, databases, auth, and deployment in one cohesive path.
6 stages · 14 skills · 8 resources
Automate, deploy, and keep systems reliable: Linux, containers, CI/CD, infrastructure as code, and observability.
6 stages · 14 skills · 9 resources
From math and Python to building, training, and deploying models — including modern deep learning and LLM applications.
6 stages · 16 skills · 8 resources
Design, deploy, and operate workloads on a major cloud: core services, networking, identity, infrastructure as code, and cost-aware architecture.
6 stages · 16 skills · 14 resources
Build, test, and ship native-quality apps for iOS and Android — UI, state, device APIs, offline data, and the app stores.
6 stages · 15 skills · 14 resources
Build the pipelines and platforms that move and shape data: SQL, Python, warehouses, batch and streaming ETL, and orchestration.
5 stages · 14 skills · 11 resources
Turn data into insight and decisions: statistics, Python, exploratory analysis, machine learning, and clear communication of results.
5 stages · 14 skills · 11 resources
Defend systems and find flaws before attackers do: networking, the web attack surface, cryptography, secure development, and offensive testing.
5 stages · 14 skills · 11 resources
Guarantee quality through testing: manual fundamentals, automated test suites, API and end-to-end testing, performance, and CI integration.
5 stages · 13 skills · 9 resources
Program the hardware around us: C/C++, microcontrollers, peripherals and protocols, real-time systems, and debugging on real devices.
5 stages · 14 skills · 9 resources
Make playable games: a game engine, gameplay programming, math and physics, art and audio integration, and shipping a finished build.
6 stages · 15 skills · 11 resources