Foundations
-
How to read nested loops and recursive calls, amortized analysis of dynamic array append, and worked Big-O walkthroughs.
-
Discrete Mathematics for Programmers
We're writing this lesson — learn it in a mentor-led program meanwhile.
Complexity cheat sheet
Benchmark linear vs binary search and bubble vs merge sort on growing inputs and plot the results.
Data structures
-
How hashing, buckets, and collisions work, average vs worst-case complexity, and solving two sum with a hash map.
-
Tree terminology, BST insert/search/delete, the four traversal methods, and when a BST degrades to O(n).
-
Track connected groups in near-constant time with union by rank and path compression — and solve classic graph problems with it.
Build your own collections
Implement a dynamic array, hash map, binary search tree and min-heap from scratch with tests.
Algorithms
-
Bubble sort, merge sort, and quicksort with full code, a complexity/stability comparison table, and when to just use sorted().
-
The backtracking template — choose, explore, un-choose — applied to subsets, permutations and N-Queens, with pruning.
-
What makes a choice greedy, a coin-change counterexample where greedy fails, and activity selection solved correctly with greedy.
-
Overlapping subproblems and optimal substructure, top-down vs bottom-up on climbing stairs, and 0/1 knapsack solved with a table walkthrough.
-
Dijkstra's algorithm for weighted shortest paths, when to reach for Bellman-Ford instead, and a complete Union-Find implementation.
50-problem sprint
Solve 50 classic problems grouped by pattern (two pointers, BFS/DFS, DP) and keep notes on each pattern.
Systems
-
Computer Architecture
We're writing this lesson — learn it in a mentor-led program meanwhile.
-
What an operating system does, kernel vs user mode, system calls, and the difference between processes and threads.
-
Race conditions, mutexes, semaphores, the producer–consumer problem, and the four conditions for deadlock — with Python demos.
-
Stack vs heap, paging, page tables, virtual memory, page faults and page replacement algorithms like LRU and FIFO.
-
How data travels across networks, the OSI and TCP/IP layer models, packets, encapsulation and the role of each layer.
Mini shell
Write a tiny shell that runs commands, pipes and background jobs — then explain what the OS did for each.
Data & design
-
Why schema design matters and the process: identifying entities, relationships, and constraints.
-
Single responsibility, open/closed, Liskov substitution, interface segregation and dependency inversion — with before/after code.
Refactor kata
Take a messy script, design its schema properly and refactor the code with SOLID principles and two design patterns.
Beyond the basics
-
How distributed nodes agree despite failures — Raft leader election and log replication, Paxos in brief, and where this shows up in etcd and ZooKeeper.
-
Compilers & Theory of Computation
We're writing this lesson — learn it in a mentor-led program meanwhile.
-
Commonly asked algorithms interview questions with clear, practical answers.
Key-value store
Build a replicated key-value store and explain what happens when a node fails.
Finish line: prove it
Finished the roadmap? Turn it into proof employers trust.
🏆 Earn a free Skill Forge certificate
🧭 Where to go next
Computer Science Fundamentals Roadmap FAQ
Do I need a computer science degree to become a software engineer?
Which computer science topics matter most for coding interviews?
What order should I learn computer science fundamentals in?
How long does it take to learn CS fundamentals?
Keep going after this roadmap
Backend Developer Roadmap
Everything a modern backend developer needs — from Linux, HTTP and SQL to APIs, security, caching, queues, Docker and system design.
- 1Foundations
- 2APIs & databases
- 3Security & performance
- 4Async & messaging
- 5Ship to production
- 6Architecture
System Design Roadmap
The concepts and practice problems that come up in every system design interview and every real large-scale system.
- 1Core concepts
- 2Data & messaging
- 3Production concerns
- 4Practice
AI Engineer Roadmap
A step-by-step path from Python basics to building, fine-tuning and shipping LLM apps, RAG systems and AI agents.
- 1Programming foundations
- 2Machine & deep learning
- 3LLMs & generative AI
- 4Build AI applications
- 5Customise, evaluate & ship