Suggested Paths
For beginners, the biggest risk isn't picking the "wrong" topic — it's overwhelm and quitting. Pick a goal, follow the order. Each track starts from a shared Python + CS + Math foundation.
Everyone starts here
Foundation · ~3 months part-timeEveryone starts here. Python builds confidence fast because you see results immediately; CS gives you the vocabulary every other course assumes; Math is a slow background drip — not a blocker.
- 1
Python
Programming Languages · Beginner · 1,289 lessonsFirst language. Quick wins build the habit before anything harder.
Start course →
- 2
Computer Science
Foundations · Intermediate · 2,872 lessonsLight pass — variables, functions, data structures, complexity. The vocabulary downstream courses assume.
Start course →
- 3
Mathematics
Foundations · Beginner · 3,121 lessonsBackground drip: discrete logic, basic stats, a touch of linear algebra. Don't wait to finish before moving on.
Start course →
Then pick a track
Backend / Infrastructure
~9–12 months part-time after foundationThe 'boring' early path that produces engineers who get hired into senior roles fastest. Delayed reward, but real.
Log in to save this path to your profile and track progress.
- 1
Software Engineering
Software Engineering · Intermediate · 1,933 lessonsVersion control, testing, code review — the habits that separate junior from senior.
Start course →
- 2
Java
Programming Languages · Intermediate · 2,870 lessonsA workhorse backend language. Strong typing, mature ecosystem, and the lingua franca of large-scale server systems.
Start course →
- 3
System Design
Software Engineering · Advanced · 1,919 lessonsArchitect scalable, reliable distributed systems. The senior-engineer toolkit.
Start course →
- 4
Cloud and Infrastructure
Infrastructure & Security · Intermediate · 2,989 lessonsAWS/GCP/Azure, containers, infrastructure as code. Where backends actually run.
Start course →
- 5
Security
Infrastructure & Security · Intermediate · 3,052 lessonsThreat models, cryptography, defensive engineering. Know this before going to production.
Start course →
Beginner-protection rules
Apply these regardless of which track you pick.
- Don't wait to finish Math before moving on — keep it as a background track.
- Ship one real app before circling back to Security and System Design.
- Don't rush ML/DL — without stats, you'll run libraries you can't reason about.
- Pick one language at a time. Switching too early kills momentum.
- Pick a track and commit for at least a month before second-guessing it. Overwhelm and quitting are the real risks — not picking the 'wrong' path.
Want to skip around instead? Browse all courses.