Coding

Why Smart Engineers Fail Amazon Coding Rounds

The engineers who fail Amazon coding rounds are usually not the ones who cannot solve the problem. They are the ones who solve it silently, or who get stuck and go quiet, or who treat the session like a solo exam rather than a collaborative technical conversation.

I have been in enough debrief discussions to know that "got to a working solution" is not what makes the difference between a hire and a no-hire in the coding round. Here is what actually does.

Interviewers score the process, not just the output

When an Amazon interviewer sits down to write their feedback after a coding round, they are filling out a scorecard that covers more than whether you found the right answer. They are evaluating how you think through problems, how you communicate under pressure, whether you can take a hint without being handed the solution, and whether you would be pleasant and productive to work with on a real engineering team.

A candidate who finds an optimal solution in complete silence often scores lower than a candidate who talks through their thinking clearly, asks a smart clarifying question, and reaches a good-enough solution with five minutes to spare. The interviewer needs material to write about. Give them material.

Silence is the most common mistake

When engineers get stuck, the natural instinct is to go quiet and think. That is the worst thing you can do in an Amazon coding interview. The interviewer cannot evaluate what they cannot see. If you stop talking, you stop generating evidence, and an absence of evidence is almost always scored negatively.

When you are stuck, narrate the stuck. "I know I need to track states here but I am trying to figure out the right data structure." "My first instinct is a hash map but I want to think about whether that handles the edge case where..." That gives the interviewer something to work with, and it often gives them the right moment to nudge you without handing you the answer.

One practical rule: Never stop talking for more than about 30 seconds. If you cannot think of what to say about the problem, say what you are thinking about the problem.

Clarifying questions are expected and scored

Jumping straight into code without asking any clarifying questions is a signal that you are either overconfident or not thinking about the real-world context of the problem. Strong candidates ask at least one or two questions before writing a single line of code. What are the input constraints? Is the data sorted? Should we optimize for time or space? Are there edge cases the interviewer wants to highlight?

These questions do two things. They show structured thinking, and they sometimes reveal information that changes your approach entirely. Interviewers often have follow-up constraints ready specifically to see if you think to ask.

What to do when you get a hint

If an interviewer offers a hint, take it gracefully and quickly. Candidates sometimes resist hints because they want to feel like they solved it themselves. That impulse works against you. The interviewer is not trying to help you cheat. They are trying to keep the session moving and give you more opportunities to demonstrate other skills. Accept the nudge, incorporate it immediately, and keep going.

Struggling to use a hint, or ignoring it, is a negative signal. Taking it and running with it is not a mark against you.

The final few minutes matter more than most people think

At the end of a coding session, interviewers often ask you to walk through your solution, discuss the time and space complexity, or suggest how you would handle it at scale. These minutes are an opportunity many candidates waste by rushing or going vague. Have a clear answer for complexity, and be ready to talk about what you would change if the input were a million times larger.

Want personalized prep for your specific situation?

A free intro call takes 15 minutes and costs nothing. Let's figure out what you need.

Book a free intro call