Skip to content
Interview track

Lesson 10 · 5 min read

10 — Resources

Ranked by usefulness, with explicit guidance on what to skip. The most common failure mode in DSA prep is collecting resources instead of using one. Pick the primary in each category and ignore the rest until it's exhausted.


Primary stack — this is all you actually need

Purpose Resource Cost
Problem list + video solutions NeetCode.io — the roadmap view with the dependency graph Free
Practice platform LeetCode Free tier is enough
Video explanations NeetCode YouTube Free
Mock interviews Pramp (peer, free) / interviewing.io Free / paid
SQL LeetCode SQL 50 Free
System design system-design-primer Free
LLD low-level-design-primer Free

That's the whole stack. Everything below is optional supplementation. If you're deciding between adding a resource and doing two more problems, do the problems.


Problem lists

  • NeetCode 150 — your primary. Curated, ordered by dependency, video solution for every problem in multiple languages. The dependency-graph UI physically prevents you from attempting graphs before you've done arrays and trees, which is genuinely good pedagogy.
  • Blind 75 — the original list NeetCode 150 extends. Use it as a final-week revision set, not a primary.
  • NeetCode 250 / NeetCode All — after 150, if you want more volume in a weak area.
  • Striver's A2Z DSA Sheet — more exhaustive, more theory-heavy, Java/C++ oriented. Good as a reference for a topic you're weak in. Doing all of it is not a good use of your time budget.
  • LeetCode company tags — in the 2–3 weeks before a specific interview, filter by that company and by "last 6 months." This is what premium is actually worth paying for, and only then.

Learning the concepts

Free, high quality:

Paid, worth it only if you have a specific gap:

  • AlgoMonster — pattern-first organization; good if you want more structure than NeetCode
  • Grokking the Coding Interview (Educative) — the original pattern-based course. Its main value is the framing; this curriculum already gives you that framing for free.
  • Books: Cracking the Coding Interview (dated in places, still the standard behavioral/process reference), Elements of Programming Interviews in Python (harder, excellent problems), Designing Data-Intensive Applications by Kleppmann (the best systems book ever written — read it slowly during Phase 3, not now)

System design


Practice environments and mocks

  • Pramp — free peer mock interviews. Quality varies with your partner, but the speaking practice is the point and that works regardless.
  • interviewing.io — anonymous mocks with real FAANG engineers. Some free, mostly paid. The feedback quality is the best available.
  • LeetCode Mock — timed problem sets, no human
  • Codeforces — competitive programming. Only if you want speed training and enjoy it; it is not on the critical path.

  • Simplify — autofill applications, plus a live big-tech internship list
  • GitHub: summer-2027-internships — community-maintained live posting tracker. Check weekly.
  • levels.fyi — compensation data, for negotiation and target-setting
  • Blind — anonymous industry discussion; useful for timelines and interview reports, heavily biased toward negativity. Calibrate accordingly.
  • Your own summer2027-apply skill and internship tracker — the pipeline you already have. Use it weekly.

What to skip

Being explicit about this is as valuable as the recommendations.

  • Do not do all of Striver + NeetCode + Blind 75 + Grokking. They overlap ~80%. Pick one primary.
  • Do not learn a second language for DSA. Python is decided. See README §1.
  • Do not start with system design. It doesn't gate internships and it consumes time DSA needs right now.
  • Do not do competitive programming unless you enjoy it as a hobby. Codeforces skills only partially transfer, and the time cost is high.
  • Do not buy LeetCode Premium yet. Buy it 2–3 weeks before a specific company's interview, for the company-tagged questions. Before that it adds nothing.
  • Do not watch "top 10 DSA tips" videos. You have the plan. Watching content about preparing is a substitute for preparing.
  • Do not read solutions before struggling for 22 minutes. See the daily protocol.

The one-line version

NeetCode 150 in Python, 2 problems a day, log every one, re-solve on schedule, apply every week starting now. Everything else on this page is optional.

→ Back to README · Log your work in tracker.md