The biggest mistake in interview prep is treating "DSA" as one undifferentiated mountain.
It isn't. A frontend interview at a product company and a backend interview at a systems
company sample the same 21 topics with wildly different weights. If you grind
all 450 problems in textbook order, you spend your scarcest resource — time — on topics your
target role barely asks about.
This is the entire premise behind SUITS: pick your role, and the same
curated problems get resequenced by relevance. Below is the reasoning that drives that
reordering, so you can apply it yourself.
Frontend / UI Engineer
Frontend interviews lean on arrays, strings, hashing, and recursion, plus a
heavy dose of practical JavaScript (closures, event loop, debounce/throttle) that pure DSA sheets
ignore. Trees show up — but usually as the DOM, so traversal and recursion matter more than
self-balancing BSTs.
- Go deep: Arrays & strings, hashing, two pointers, sliding window, recursion, basic trees (traversal).
- Go light: Advanced graphs, segment trees, DP on intervals, bit manipulation.
- Don't skip: A few classic DP problems still appear at senior levels.
Backend / Distributed Systems
Backend rounds are where graphs, heaps, and greedy earn their keep — think
dependency resolution (topological sort), rate limiting (queues/heaps), and shortest-path framing
of real routing problems. Hashing and design-flavoured questions dominate.
- Go deep: Graphs (BFS/DFS, topological sort, Dijkstra), heaps/priority queues, hashing, intervals.
- Go light: String algorithms beyond the basics, advanced math.
- Pair with: Low-level + high-level system design — DSA alone won't carry a backend loop.
Data / ML Engineer
Data roles weight arrays, hashing, sorting, and heaps (top-K is everywhere),
with SQL and probability bolted on. Graph problems appear as data-pipeline DAGs.
- Go deep: Hashing, sorting, heaps (top-K, streaming median), two pointers, prefix sums.
- Go light: Backtracking, advanced tree balancing.
- Add: SQL window functions and basic probability — frequently the differentiator.
Generalist SDE (FAANG-style)
The classic big-tech loop is the most uniform: it samples broadly and rewards
pattern recognition over memorisation. This is the one role where breadth genuinely beats
specialisation.
- Go deep: All of: arrays/strings, hashing, two pointers, sliding window, trees, graphs, DP, heaps, backtracking.
- The pattern: ~70% of asked questions map to under a dozen recurring templates. Learn the template, not the problem.
How to use this
Pick one role and let it set your order. Solve the "go deep" topics until you can
recognise the pattern in under two minutes, then breadth-fill the rest. The point isn't to skip
topics forever — it's to sequence them so the highest-probability material is
solid before your first interview, not your last.
For a topic-frequency breakdown across all roles, see
the 21 DSA topics that cover 90% of interviews.
For which sheet to anchor on, read
our sheet comparison.