I · 027 min left

Part I · Orientation

Where You Are Right Now

Section 02 · about 7 minutes

Before deciding what to practise, work out where you actually are. Most wasted preparation comes from working at the wrong level: grinding easy problems long after they have stopped teaching you anything, or attempting hard ones before your foundations are ready and deciding you are not smart enough.

Three phases. They are not about years of experience or job title; they are about what happens when you sit down with a problem.

2.1 The Three Phases

Choose the row that honestly describes your last few practice sessions. Overestimating your level costs you preparation time, not pride.

Beginner Experienced Senior
Easy problems Solvable, but often over 15 minutes Under 10 minutes, comfortably Immediate
Medium problems Usually stuck Solvable, often over 20 minutes Under 20 minutes
Hard problems Not yet Rarely Solvable in about 30 minutes
Techniques Know a few by name Know most; unsure when to apply them Apply confidently; struggle to combine them
What is actually hard Getting to any working solution Choosing the right approach Stacking techniques for a creative solution
So practise Easy problems, breadth Medium problems, pattern recognition Hard problems, and teaching others

Being generous here costs you preparation time, not pride.

The most common misdiagnosis is an Experienced-phase candidate practising like a Beginner, continuing to solve easy problems because they feel productive. They are not. Once easy problems are comfortable, the thing limiting you is no longer solving, it is recognizing, and that is trained differently.

2.2 What to Practise in Each Phase

Here is a suggested distribution, based on my own preparation and on watching others. Treat it as a starting point to adjust, not a rule to follow blindly.

Beginner Experienced Senior
Total problems ~50 ~150 ~100
Arrays and strings 30 100 30
Linked lists 10 40 10
Trees 10 40 20
Graphs and grids 0 20 40
Difficulty Easy Medium Hard

The distribution matters more than the totals. Arrays and strings dominate early because most techniques are introduced there before being applied elsewhere. Graphs come later, when you are ready to combine those techniques.

Beginner

Get to working first; optimal comes later.

  • Review reading input and writing output in your language until it is automatic. Interview time spent remembering syntax is time not spent thinking.
  • Review the standard operations on each built-in structure, and what each costs.
  • Solve easy problems and finish them. An abandoned problem teaches less than a slow, ugly, correct one.
  • Weight towards arrays and strings.

Experienced

This is where most people stall, for a specific reason: they keep practising how to solve problems after their real constraint has become recognising which approach to use.

  • Solve medium problems almost exclusively.
  • After each one, write a single sentence naming the pattern. That habit is the whole of Section 6’s first pillar and it costs ten seconds.
  • Group problems that share a shape, and name the groups yourself.
  • Convert each group into a template you could adapt to an unseen problem.

Those last three bullets are FGCC, which Section 6 covers properly. They are here because this is the phase where they start paying, and the order matters: do them while you practise, not afterwards. A pattern noticed at the moment of solving sticks; one reconstructed a week later does not.

Senior

  • Solve hard problems, but fewer of them. Hard problems are mostly two or three techniques stacked, so the skill being trained is combination, not recall.
  • Teach. Explain solutions to other people, write them up, answer questions. Section 6 argues that this is the only reliable way to find the gaps in your own understanding, and it also trains the factor Section 3 ranks most decisive.

2.3 A Diagnostic

Phase descriptions are easy to read generously. This is harder to fool.

Take three medium problems you have never seen. Set a timer for 25 minutes each. Solve them alone, out loud, recording yourself. No assistant, no hints, no looking anything up.

Then answer:

  1. How many did you finish with a working solution?
  2. How many did you get to an optimal solution?
  3. On how many did you state the complexity without being asked?
  4. How long was your longest silence?
  5. On how many did you know which technique to use within the first three minutes?

Scoring, roughly:

  • Fewer than two finished → Beginner. Go back to easy problems; the foundations are not yet automatic.
  • Two or three finished but rarely optimal, or technique unclear early → Experienced, and the constraint is recognition. Section 6 and Section 12 are your chapters.
  • All three finished and optimal, but silences over a minute or complexity unstated → your algorithms are not the problem. Section 3 and Section 13 are.

That last outcome is the most common among people who have been grinding for months, and it is the one this book was written for.

2.4 A Calendar

Problem counts without a timeframe are not a plan. Here are three schedules, depending on how much time you have.

Four weeks: you have an interview booked.

Week Focus
1 Section 3 and Section 4. Easy problems, applying all eight steps to every one, out loud.
2 Medium problems by technique, one per section of Part III.
3 Mixed medium problems, no hints about which technique. This is where Section 12 gets trained.
4 Full mock interviews, out loud, with a person if possible. Fewer problems, more review.

Eight weeks: you are preparing deliberately. The same four, each stretched to two, with the extra time going to Section 6: after every problem, one sentence naming the pattern, and a group entry once a week.

Twelve weeks: you are starting from further back. Three weeks at Beginner volume first, then the eight-week plan.

Whatever the length, hold two rules.

Three problems a day is the ceiling. Beyond that you are pattern-matching on fumes and retaining nothing. Two solved properly, out loud and analysed and written up in a sentence, beats six rushed.

Every week must contain problems you solve out loud. Not most weeks. Every week. It is the only way to train the factor that decides the most interviews, and it is the first thing people drop when they get busy.

2.5 Expect It to Feel Slow

Before Part II, there is one thing worth remembering, because this is where many people give up.

Progress in this is not gradual, and it does not correlate with how you feel. You will spend weeks feeling stuck and then abruptly find that a category of problem has become obvious. The usual point at which people report that shift is about a month of consistent daily practice, and the month before it feels like nothing is happening.

That month is not wasted. It is what the shift is made of. Most people who quit, quit inside it.

Key Takeaways

  • Your phase is about what happens when you sit down with a problem, not about your job title.
  • The most common misdiagnosis is an Experienced candidate practising like a Beginner, solving easy problems because they feel productive.
  • Once easy problems are comfortable, the constraint is recognition, not solving. They are trained differently.
  • Problem counts are a starting point. The shape of the distribution matters more than the totals.
  • Run the diagnostic rather than reading the phase descriptions generously.
  • If you finish and optimize three medium problems but go silent for a minute at a time, your algorithms are not the problem.
  • Three problems a day is the ceiling. Two done properly beats six rushed.
  • Every week contains problems solved out loud. Every week.
  • Expect about a month of feeling stuck before it shifts. That month is the shift.

Practice

  1. Run the Section 2.3 diagnostic this week, before reading further. You need to know which phase you are in before Section 3’s rubric is useful to you.
  2. Pick a calendar shape and write the actual dates down. A plan without dates is an intention.
  3. Count how many of your last twenty practice problems you solved out loud. If the answer is zero, you have found the thing to change first.

Keep reading. It is free.

The first three sections are open to anyone. The other 16 need an account, which costs nothing and does not expire.