Preparing for a Technical Interview Without Grinding Puzzles

Shvii Team | | 7 min read
A candidate working through a problem on a whiteboard with an interviewer

What is actually being assessed

Candidates prepare for technical interviews as though the goal is arriving at the correct answer. Correctness matters, and it is rarely the whole score.

Most structured interviewers grade several things separately: whether you understood the problem before starting, how you reasoned toward a solution, the quality of the solution itself, and how you communicated throughout. A candidate who reaches a working answer in silence frequently scores below one who reasoned aloud and did not finish.

This is not interviewers being soft. They are hiring someone to work with other people on problems nobody has solved yet, and the interview is the only sample of that they will get.

The rounds, and what each is for

The phone or online screen. A filter rather than an assessment. Usually a moderate problem or a set of automated questions. The bar is lower than people fear and the failure mode is usually carelessness rather than difficulty.

Live problem solving. One or two problems with an interviewer watching. This is where communication is weighted most heavily.

System design. Appears from mid-level upward. Open-ended by design, with no single right answer, testing whether you can reason about trade-offs at scale.

A take-home. Increasingly common as an alternative to live coding. Assessed differently from everything else, and most candidates optimise for the wrong thing.

The behavioural round, which technical candidates routinely under-prepare and which eliminates people at every level.

Live problem solving: the sequence that scores

There is a repeatable structure, and following it is worth more than knowing more algorithms.

Ask before you start. What is the input size, what should happen at the edges, can I assume the data is sorted, what should this return on an empty input. Clarifying questions are almost always on the rubric explicitly, and candidates who begin coding immediately lose the mark before writing a line.

Say your approach out loud before writing it. "I think a hash map gets this to linear time, at the cost of memory. Shall I go that way?" This gives the interviewer a chance to redirect you early instead of watching you spend twenty minutes going somewhere wrong.

Start simple. A working slow solution beats an unfinished clever one. Say that you are starting with the straightforward version and will optimise, then do it. Interviewers are used to this and it de-risks the whole round.

Narrate while you work. Not every keystroke, but the decisions. Why this data structure, what you are handling here, what you are deliberately deferring.

Test it yourself. Walk through an example, including an edge case, before saying you are done. Candidates who find their own bug score higher than candidates whose bug the interviewer finds.

One clear takeaway: an interviewer cannot award credit for reasoning they cannot hear.

Silence is the most expensive habit

The single most common way strong engineers fail these rounds is by thinking quietly.

It is natural. Hard problems demand concentration and talking while thinking is genuinely difficult. But from the other side of the table, a candidate staring at the screen for four minutes is indistinguishable from a candidate who is stuck and hiding it.

The fix is a habit rather than a skill. When you need to think, say what you are thinking about. "I am trying to work out whether I can avoid the second pass" is enough. It keeps the interviewer with you and it frequently prompts a hint you would not otherwise have got.

Practise this specifically. Solve problems out loud, alone, with nobody listening. It feels ridiculous and it is the closest simulation available.

System design without reciting an architecture

Design rounds go wrong in a recognisable way: the candidate produces a diagram assembled from study material, with load balancers and caches and queues, that describes no particular system and has no history.

Interviewers can tell. What they are listening for is whether you have operated something and learned from it.

Start by establishing scale. How many users, how much data, what read and write pattern, what latency matters. Designing for millions when the interviewer had thousands in mind demonstrates something unhelpful about how you would work.

Then make trade-offs explicit and say what you are giving up. Every design decision costs something, and naming the cost is what distinguishes experience from recall.

Prepare by writing down three systems you have actually worked on. For each: the constraint that shaped the design, the failure you did not anticipate, and what you would change. That material is reusable across every design round and it is far more valuable than a reference diagram. Our software engineer guide covers how these rounds tend to run.

Take-homes: what is actually graded

Candidates treat a take-home as a feature race and add as much as they can. Reviewers grade something else.

They are looking at whether the code is readable by someone who did not write it, whether there are tests and whether they test anything meaningful, whether the structure makes sense, and whether the README explains the decisions.

A smaller, complete, well-tested submission with a clear README beats a larger one with no tests almost every time.

Say what you left out and why. "I did not implement pagination; with more time I would, and here is where it would go" reads as judgment. Silence on the gaps reads as not having noticed them.

Time-box it and state the time you spent. If a take-home would take more than about four hours, it is reasonable to say what you can deliver in that window rather than quietly spending a weekend.

What to practise, and what not to

Practice has diminishing returns and most people spend it badly.

Worth the time: the common data structures and when each applies, the handful of patterns that recur across most problems, and enough fluency that syntax does not slow you down. Roughly forty to sixty problems solved properly, with the ones you got wrong revisited, covers most of the ground.

Not worth the time: solving three hundred problems, memorising solutions, or preparing for exotic algorithms you would look up in real work. Beyond a point, additional volume mostly builds recognition rather than problem-solving.

The highest-return practice for most people is not more problems at all. It is doing a small number of problems out loud, under time pressure, with someone listening. Our interview prep tool generates role-specific questions when nobody is available.

When you get stuck, which you will

Being stuck is not a failure state and interviewers frequently introduce problems expecting it.

What matters is what you do. Say where you are stuck specifically. "I can see this is quadratic and I am trying to find a way to avoid the inner loop" is a useful sentence. It tells the interviewer you understand the problem and invites a hint without asking for one.

Take the hint when it comes. Candidates who resist hints out of pride lose far more than the hint costs them, and using one well is itself a positive signal.

If you genuinely cannot see it, say what you would do in real life. Look up the approach, ask a colleague, start with the brute force and profile it. That answer is honest and it describes how the work actually happens.

The behavioural round technical candidates skip

Nearly every technical loop includes a conversation about how you work, and engineers routinely arrive unprepared for it because it feels like a formality.

It is not. It eliminates people at every level, and the questions are predictable: a disagreement with a colleague, a project that went wrong, a time you had to push back, how you handle code review.

Prepare six examples in advance with real detail. The same material serves every company, and it is the cheapest preparation available.

Questions people ask

How many practice problems should I do?

Roughly forty to sixty solved properly, with the failures revisited, covers most patterns. Volume beyond that mostly builds recognition rather than ability.

Is it bad to ask for a hint?

No. Naming exactly where you are stuck and using the hint well scores better than struggling silently out of pride.

Do I need the optimal solution?

Not always. A working solution you explained clearly, with the optimisation described, frequently scores higher than an optimal one produced in silence.

How long should a take-home take?

Time-box it to about four hours and say what you spent. State what you left out and why; that reads as judgment rather than omission.

What is the most common reason candidates fail?

Not talking. Interviewers cannot score reasoning they cannot hear, and a silent candidate is indistinguishable from a stuck one.

Related reading

Practise with questions for your stack

Open interview prep

Useful next steps from this article - tools to apply the advice, plus related career guides.