Roadmap
Roadmap to becoming an SDE.
Every DSA topic is its own dropdown — Arrays, Hashing, Trees, Graphs, DP, and more. Inside each topic you get Articles (our written tutorials), Questions (curated LeetCode problems with solution write-ups), and References.
🌱Programming Foundations [Python, Java, C++, OOP, Git]
Before any DSA, you need to write code comfortably in one language.
0 / 13
🌱Programming Foundations [Python, Java, C++, OOP, Git]
Before any DSA, you need to write code comfortably in one language.
📘 Articles
⏱️Time & Space Complexity [Big-O, Analysis]
Learn to estimate cost before writing code.
0 / 2
⏱️Time & Space Complexity [Big-O, Analysis]
Learn to estimate cost before writing code.
🔗 References
🔁Recursion [Base case, Stack frames]
Recursion underlies trees, graphs, backtracking, and DP.
0 / 2
🔁Recursion [Base case, Stack frames]
Recursion underlies trees, graphs, backtracking, and DP.
📦Arrays [Prefix Sum, Kadane, Rotation]
The most-asked category in interviews. Start here.
0 / 8
📦Arrays [Prefix Sum, Kadane, Rotation]
The most-asked category in interviews. Start here.
🧩 Questions
| Problem | Solution | LeetCode | GFG | Difficulty |
|---|---|---|---|---|
| Two Sum | Read → | Solve ↗ | Read ↗ | Easy |
| Product of Array Except Self | Read → | Solve ↗ | — | Medium |
| Maximum Subarray (Kadane) | Read → | Solve ↗ | — | Medium |
| Rotate Array | Read → | — | — | Medium |
| Maximum Product Subarray | Read → | — | — | Medium |
| Jump Game | Read → | — | — | Medium |
| Merge Intervals | Read → | — | — | Medium |
🔗 References
🔑Hashing [Hash Maps, Frequency, Sets]
Frequency counting, lookup tables, deduping.
0 / 5
🔑Hashing [Hash Maps, Frequency, Sets]
Frequency counting, lookup tables, deduping.
🎯Two Pointers [Sorted Arrays, Opposite Ends]
Opposite-end pointers for sorted-array problems.
0 / 4
🎯Two Pointers [Sorted Arrays, Opposite Ends]
Opposite-end pointers for sorted-array problems.
🪟Sliding Window [Fixed Window, Variable Window]
Window patterns for substring / subarray problems.
0 / 4
🪟Sliding Window [Fixed Window, Variable Window]
Window patterns for substring / subarray problems.
🔤Strings [Palindromes, Anagrams, Encoding]
Palindromes, anagrams, encoding/decoding.
0 / 4
🔤Strings [Palindromes, Anagrams, Encoding]
Palindromes, anagrams, encoding/decoding.
🧩 Questions
🔗 References
🥞Stacks and Queues [Monotonic Stack, Pre-In-Post-fix, Implementation]
Monotonic stacks, parenthesis matching, expression evaluation.
0 / 5
🥞Stacks and Queues [Monotonic Stack, Pre-In-Post-fix, Implementation]
Monotonic stacks, parenthesis matching, expression evaluation.
🧩 Questions
🔗 References
🔗Linked Lists [Singly, Doubly, Fast/Slow]
Single/double lists, dummy nodes, fast/slow pointers.
0 / 4
🔗Linked Lists [Singly, Doubly, Fast/Slow]
Single/double lists, dummy nodes, fast/slow pointers.
🔎Binary Search [Sorted, Rotated, Answer Space]
Logarithmic thinking. Sorted, rotated, or "answer-space" arrays.
0 / 4
🔎Binary Search [Sorted, Rotated, Answer Space]
Logarithmic thinking. Sorted, rotated, or "answer-space" arrays.
🧩 Questions
🔗 References
📊Sorting [Merge, Quick, Heap]
Merge, quick, heap. Know when to pick each.
0 / 3
📊Sorting [Merge, Quick, Heap]
Merge, quick, heap. Know when to pick each.
🧩 Questions
🔗 References
⛰️Heaps [Min-Heap, Max-Heap, Top-K]
Priority queues for top-K, scheduling, and streaming problems.
0 / 2
⛰️Heaps [Min-Heap, Max-Heap, Top-K]
Priority queues for top-K, scheduling, and streaming problems.
💡Greedy Algorithms [Easy, Medium, Hard]
Take the locally best choice — prove it leads to the global optimum.
0 / 2
💡Greedy Algorithms [Easy, Medium, Hard]
Take the locally best choice — prove it leads to the global optimum.
🌳Binary Trees [Traversals, Medium, Hard]
Traversals, depth, validation, LCA.
0 / 9
🌳Binary Trees [Traversals, Medium, Hard]
Traversals, depth, validation, LCA.
🧩 Questions
| Problem | Solution | LeetCode | GFG | Difficulty |
|---|---|---|---|---|
| Invert Binary Tree | Read → | Solve ↗ | — | Easy |
| Maximum Depth of Binary Tree | Read → | Solve ↗ | — | Easy |
| Binary Tree Level Order Traversal | Read → | Solve ↗ | — | Medium |
| Validate Binary Search Tree | Read → | Solve ↗ | — | Medium |
| Kth Smallest Element in BST | Read → | — | — | Medium |
| Lowest Common Ancestor of BST | Read → | — | — | Medium |
| Path Sum | Read → | — | — | Easy |
| Serialize and Deserialize Binary Tree | Read → | — | — | Hard |
🔗 References
🕸️Graphs [BFS, DFS, Topo Sort, Union-Find]
Adjacency lists, BFS/DFS, topological sort, union-find.
0 / 6
🕸️Graphs [BFS, DFS, Topo Sort, Union-Find]
Adjacency lists, BFS/DFS, topological sort, union-find.
🌀Backtracking [Subsets, Permutations, Combinations]
Recursive search with undo. The "choose / explore / unchoose" template.
0 / 6
🌀Backtracking [Subsets, Permutations, Combinations]
Recursive search with undo. The "choose / explore / unchoose" template.
🧠Dynamic Programming [1D, 2D, Memoize, Tabulate]
The hardest interview category. Memoize first, then tabulate.
0 / 9
🧠Dynamic Programming [1D, 2D, Memoize, Tabulate]
The hardest interview category. Memoize first, then tabulate.
🧩 Questions
🔗 References
🗃️Databases & SQL [SELECT, JOIN, Indexes]
Asked in nearly every backend interview.
0 / 2
🗃️Databases & SQL [SELECT, JOIN, Indexes]
Asked in nearly every backend interview.
📘 Articles
🔗 References
🏗️System Design [HTTP, Caching, Queues, Load Balancers]
HTTP, REST, caching, queues, load balancers, databases.
0 / 1
🏗️System Design [HTTP, Caching, Queues, Load Balancers]
HTTP, REST, caching, queues, load balancers, databases.
🔗 References
📝Resume, Behavioral & Negotiation [Resume, STAR, Offer]
The non-coding parts of the interview that decide compensation.
0 / 4
📝Resume, Behavioral & Negotiation [Resume, STAR, Offer]
The non-coding parts of the interview that decide compensation.
Ready to apply?
Once you can solve mediums fluently, pair this roadmap with our resume, behavioral, and negotiation guides.