Study Guide

Technical Interview Prep — The Complete Roadmap

A structured 10-12 week plan that takes you from "I need to start preparing" to "I'm ready for my onsite" — covering data structures, patterns, system design, behavioral prep, and mock interviews in one comprehensive guide.

12 min read|

The complete technical interview prep roadmap

From zero to interview-ready in 10-12 weeks — every stage, skill, and resource

The Complete Roadmap from Zero to Interview-Ready

Technical interview prep can feel overwhelming. There are hundreds of LeetCode problems, entire books on system design, and a seemingly infinite list of topics to cover. Without a roadmap, most candidates either burn out from unstructured grinding or waste weeks studying the wrong things at the wrong time.

This guide is the roadmap. It breaks the entire technical interview preparation process into six clear stages across 10-12 weeks, each building on the last. Whether you are targeting FAANG, a Series B startup, or a mid-size tech company, the core skills are the same — the difference is in the depth.

The plan assumes 2-3 hours of daily prep time. If you have more time, you can compress the timeline. If you have less, extend it — but do not skip stages. Every stage exists for a reason, and the candidates who skip behavioral prep or mock interviews are the ones who stumble on interview day.

By the end of this roadmap, you will have a solid foundation in data structures and algorithms, mastery of the 15 core coding patterns, working knowledge of system design, polished behavioral stories, and real mock interview experience. That is what interview-ready actually looks like.

Stage 1: Foundations (Weeks 1-2)

Every strong technical interview prep plan starts with foundations. Before you can recognize patterns, you need fluency in the basic data structures: arrays, hash maps, linked lists, stacks, queues, trees, and graphs. You also need a working understanding of Big O notation — not just memorized rules, but the ability to analyze a solution and explain its time and space complexity.

During these two weeks, focus on Easy-level problems exclusively. The goal is not to solve hard problems — it is to build vocabulary. When you see an array problem, you should instinctively think about hash maps for O(1) lookup. When you see a tree, you should know the difference between DFS and BFS without hesitation.

Start with 2-3 Easy problems per day across different categories. YeetCode organizes problems into 13 categories — Arrays and Hashing, Two Pointers, Sliding Window, Stack, Binary Search, Linked List, Trees, Heap/Priority Queue, Backtracking, Graphs, 1-D Dynamic Programming, Greedy, and Intervals. Touch each category at least once during these two weeks.

Do not time yourself yet. Focus on understanding, not speed. Read the solution after attempting each problem for 20-30 minutes. Write down the pattern you see — "this is a two-pointer problem because the array is sorted" or "this uses a hash map to track seen values." Building this vocabulary is the single most important thing you can do in weeks 1-2.

  • Review core data structures: arrays, hash maps, linked lists, stacks, queues, trees, graphs, heaps
  • Study Big O notation — learn to analyze time and space complexity for any solution
  • Solve 2-3 Easy problems daily across different categories
  • Write down the pattern for every problem you solve
  • Do not time yourself — focus on comprehension over speed
  • Use YeetCode flashcards to reinforce data structure concepts through spaced repetition
ℹ️

Optimal Timeline

Research shows that 10-12 weeks of structured preparation (2-3 hours/day) is the optimal timeline — shorter risks incomplete coverage, longer risks burnout and diminishing returns.

Stage 2: Pattern Mastery (Weeks 3-6)

This is the core of your technical interview prep. The 15 coding patterns — two pointers, sliding window, fast and slow pointers, merge intervals, cyclic sort, in-place reversal of a linked list, tree BFS, tree DFS, two heaps, subsets, modified binary search, top K elements, K-way merge, topological sort, and dynamic programming — cover roughly 80% of the problems you will see in real coding interviews.

Pick a structured problem list to follow. The NeetCode 150 and Blind 75 are the two most popular curated lists, and either one works well. The NeetCode 150 is more comprehensive and better for candidates with 8+ weeks of prep time. The Blind 75 is tighter and works for shorter timelines or candidates who already have some foundation.

The key to pattern mastery is sequential focus. Do not try to learn all 15 patterns at once. Dedicate each week to 2-3 related patterns. Weeks 3-4 should cover arrays, two pointers, and sliding window — these are the highest-frequency patterns and build the problem-solving muscles you need for everything else. Weeks 5-6 should tackle trees, graphs, and dynamic programming — harder patterns that require the foundation you built earlier.

For each pattern, follow a three-step process. First, study the template — understand the general approach, when it applies, and what signals indicate this pattern. Second, solve 3-5 problems using the pattern, starting with Easy and progressing to Medium. Third, review your solutions the next day using YeetCode flashcards to cement the pattern in long-term memory.

By the end of week 6, you should be able to look at a Medium-level problem and identify which pattern applies within 2-3 minutes. That recognition speed is what separates candidates who solve problems in 25 minutes from those who struggle for 45.

  • Follow NeetCode 150 (comprehensive) or Blind 75 (condensed) as your problem list
  • Weeks 3-4: Arrays, two pointers, sliding window, binary search
  • Weeks 5-6: Trees, graphs, dynamic programming, backtracking
  • Study the template for each pattern before solving problems
  • Solve 3-5 problems per pattern, progressing from Easy to Medium
  • Review solved problems the next day with YeetCode spaced repetition flashcards
  • Target: identify the correct pattern for any Medium problem within 2-3 minutes

Stage 3: System Design (Weeks 5-8)

Start system design preparation once you are comfortable solving Medium coding problems — typically around week 5. System design interviews test a completely different skill set: your ability to design scalable, distributed systems under ambiguity. For senior roles (L5+), this round often carries more weight than coding.

Begin with the fundamentals: load balancing, caching, database sharding, message queues, CDNs, and the CAP theorem. You do not need to be an expert in any of these — you need to know when each tool is appropriate and how they fit together in a real system.

Cover 5-6 classic system design problems during these weeks. Design a URL shortener (covers hashing, databases, and read-heavy optimization). Design a news feed (covers ranking algorithms, fan-out, and caching). Design a chat application (covers WebSockets, message queues, and presence). Design a rate limiter (covers distributed counters and sliding windows). Design a web crawler (covers task queues, deduplication, and politeness). These five designs cover the majority of concepts you will encounter in real interviews.

Practice the framework: requirements gathering (5 minutes), high-level design (10 minutes), deep dive into 2-3 components (15 minutes), and addressing bottlenecks and trade-offs (10 minutes). System design is about structured communication as much as technical knowledge. Practice talking through your designs out loud, even if you are studying alone.

  • Study fundamentals: load balancing, caching, sharding, message queues, CDNs, CAP theorem
  • Cover 5-6 classic designs: URL shortener, news feed, chat app, rate limiter, web crawler
  • Practice the framework: requirements (5 min), high-level design (10 min), deep dive (15 min), trade-offs (10 min)
  • Talk through designs out loud to practice structured communication
  • For junior roles, focus on object-oriented design and API design instead of distributed systems
💡

Pro Tip

Don't learn all 15 patterns simultaneously — master 2-3 patterns per week. Weeks 3-4: arrays, two pointers, sliding window. Weeks 5-6: trees, graphs, DP. Sequential mastery beats scattered exposure.

Stage 4: Behavioral Prep (Weeks 7-9)

Behavioral interviews are the most underprepared part of technical interview prep, and it costs candidates dearly. At Amazon, behavioral questions make up roughly 50% of the interview signal through their Leadership Principles framework. At Google, the "Googleyness and Leadership" round can veto an otherwise strong technical performance. Every major tech company weighs behavioral signal heavily in hiring decisions.

Start by preparing 8-10 STAR stories from your professional experience. STAR stands for Situation, Task, Action, Result — and each story should be a specific, detailed example from your past work. Cover different themes: a time you led a project, a time you resolved a conflict, a time you failed and learned from it, a time you made a technical decision under ambiguity, a time you delivered under tight deadlines, and a time you mentored someone.

Research the specific company values or leadership principles for each company you are targeting. Amazon has 16 Leadership Principles, Google evaluates for Googleyness and cognitive ability, Meta looks for "move fast" and collaboration. Map your STAR stories to the specific principles each company cares about. A story about bias for action resonates at Amazon; the same story reframed around velocity resonates at Meta.

Practice your "tell me about yourself" pitch until it is natural and concise — 90 seconds maximum. Cover who you are, what you have done recently, and why you are excited about this role. This answer sets the tone for the entire interview, and a rambling introduction creates a negative first impression that is hard to recover from.

  • Prepare 8-10 STAR stories covering leadership, conflict, failure, technical decisions, deadlines, and mentoring
  • Research company-specific values: Amazon Leadership Principles, Google Googleyness, Meta Move Fast
  • Map your stories to each target company's specific evaluation criteria
  • Practice "tell me about yourself" — keep it under 90 seconds
  • Rehearse stories out loud until they feel natural, not scripted
  • Prepare thoughtful questions for your interviewers about team, culture, and technical challenges

Stage 5: Mock Interviews (Weeks 8-10)

Solving problems on your own and solving them in a 45-minute interview with someone watching are two fundamentally different experiences. Mock interviews bridge that gap. They teach you to think out loud, manage your time, handle hints gracefully, and recover when you get stuck — skills that are impossible to develop through solo practice.

Do at least 4-6 mock interviews during this stage. Start with a friend or study partner for low-pressure practice, then move to platforms like Pramp or interviewing.io for sessions with strangers who can give unbiased feedback. If possible, do at least one mock with someone who has conducted real interviews at your target company.

During each mock, simulate real conditions as closely as possible. Use a shared code editor (not your IDE with autocomplete). Set a strict 45-minute timer. Explain your thought process continuously — interviewers want to hear your reasoning, not just see your code. After each mock, ask for specific feedback: Was my communication clear? Did I manage my time well? Did I consider edge cases?

Use mock interviews to calibrate your readiness. If you are consistently solving Medium problems within 25 minutes with clean code and clear communication, you are ready for real interviews. If you are struggling with time management or communication, extend this stage by another week. It is better to delay your interviews by a week than to burn opportunities at your target companies.

  • Complete 4-6 mock interviews minimum across this stage
  • Start with friends, then move to Pramp or interviewing.io for unbiased feedback
  • Simulate real conditions: shared editor, 45-minute timer, no IDE autocomplete
  • Practice thinking out loud — explain your reasoning as you code
  • Ask for specific feedback after each session on communication, time management, and edge cases
  • Readiness benchmark: solve Mediums in 25 minutes with clean code and clear communication
⚠️

Warning

Don't skip behavioral prep — at Amazon it's 50% of the signal, and at every company a weak behavioral can veto strong technical performance. Prepare 8-10 STAR stories covering different themes.

Stage 6: Interview Sprint (Weeks 9-12)

You have built the skills. Now it is time to execute. The interview sprint is about applying strategically, performing under pressure, and maintaining your edge through the entire interview process — which can stretch across several weeks of phone screens, onsites, and follow-ups.

Schedule your interviews strategically. Start with companies you are less excited about to warm up, and save your top-choice companies for later in the sprint. This gives you real interview experience before the stakes are highest. Many candidates schedule 2-3 "warm-up" interviews in the first week, then their priority targets in weeks 2-3.

On interview day, follow a pre-interview checklist: review your STAR stories in the morning, solve one Easy problem to warm up your pattern recognition (do not try a new Hard problem — this is not the time), have water and a quiet environment ready, and test your audio and video setup if the interview is remote. Arrive or log in 5 minutes early.

After each interview round, do a post-interview review within 24 hours. Write down every question you were asked, how you answered, and what you would do differently. This feedback loop is invaluable — patterns emerge across interviews, and you can adjust your preparation in real time.

When offers arrive, negotiate. Almost every offer is negotiable, and most candidates leave money on the table by accepting the first number. Research compensation ranges on levels.fyi, use competing offers as leverage, and negotiate over email where possible to remove time pressure. Throughout the sprint, use YeetCode for daily 15-minute review sessions to keep your pattern recognition sharp — skills decay quickly without maintenance.

  • Schedule warm-up interviews at lower-priority companies first
  • Interview day checklist: review STAR stories, solve one Easy warm-up, test A/V setup, arrive 5 minutes early
  • Do a post-interview review within 24 hours of every round
  • Use YeetCode for daily 15-minute maintenance sessions to keep patterns fresh
  • When offers come in, negotiate — research ranges on levels.fyi and use competing offers as leverage
  • Negotiate over email when possible to remove time pressure and allow thoughtful responses

Ready to master algorithm patterns?

YeetCode flashcards help you build pattern recognition through active recall and spaced repetition.

Start practicing now