Short answer
Narrate your reasoning out loud at every stage. Engineering interviews assess how you think far more than whether you arrive at the optimal answer - a candidate who explains a tradeoff badly reads as junior regardless of the code they wrote.
Engineers over-prepare for the coding round and under-prepare for everything else, which is backwards relative to where offers are actually lost. The coding round filters; the design and behavioural rounds decide your level, and your level decides your pay.
They Are Hiring a Colleague
Every interviewer is implicitly answering one question: do I want to debug a production incident with this person at 2am? Technical ability is necessary but it is assessed alongside whether you communicate under pressure, admit uncertainty, and take a correction without becoming defensive.
The recruiter screen
Low technical content, high consequence - this is where levelling and compensation expectations get anchored.
- Do not give a number. "What's the band for this role?" Redirect twice if necessary.
- Ask what level they are hiring at and, if it is below your expectation, raise it now rather than at the offer, while it is still cheap to change.
- Get the loop structure - how many rounds, what each covers, who you will meet. Nobody minds being asked and it changes how you prepare.
The coding round: narrate everything
Silence is the most common self-inflicted failure. An interviewer cannot give credit for reasoning they cannot hear, and cannot nudge you when you are one step from the answer.
- Restate the problem and confirm the constraints before writing anything.
- State the naive approach and its cost, then improve it. "The brute force is O(n squared) because of the nested scan - let me see whether a hash map gets that down."
- Say when you are stuck. "I'm going in circles on the edge case - can I talk through where I'm at?" This reads as strong self-awareness, not weakness.
System design: the level-defining round
This round more than any other determines whether you are offered senior or staff. Interviewers are listening for tradeoff reasoning, not for a memorised architecture.
- Gather requirements first. Scale, read/write ratio, consistency needs, latency budget. Candidates who start drawing boxes immediately consistently score lower.
- Say the tradeoff out loud. "I'd take eventual consistency on the feed for write throughput, but the balance has to be strongly consistent."
- Cover the boring parts. Monitoring, failure modes, migration, on-call. This is precisely what separates a senior answer from a staff one.
The behavioural round
Usually the least prepared for and frequently the round that decides it. Prepare three real stories - a conflict, a failure, a project you led - each in situation, action, result form, each under two minutes.
For the failure story, pick one where you were genuinely wrong and say what you changed afterwards. Candidates who cannot name a real failure read as either inexperienced or unreflective, and "my weakness is I work too hard" is a well-known way to lose a round.
The offer call
Do not accept on the call, and do not negotiate on it either. "Thank you - this is great news. Can you send the full details in writing? I'd like to look at it properly and come back to you tomorrow." Then negotiate once, in writing or on a scheduled call, with a specific number and a reason.
Everything agreed must appear in the written offer. Verbal commitments about early reviews, title changes or remote arrangements have a habit of evaporating when the manager who made them moves on.
Frequently asked questions
What do interviewers actually assess in a technical interview?
How you reason, communicate and handle being stuck, at least as much as whether you reach the optimal solution. A candidate who narrates a tradeoff clearly usually outperforms one who silently produces better code.
How do I answer "tell me about a time you had a conflict"?
Pick a real technical disagreement, describe the situation in two sentences, explain what you did, and state the outcome including what you would do differently. Avoid stories where you were simply right and the other person was simply wrong - they signal poor self-awareness.
Should I accept an offer on the phone?
No. Thank them, ask for the full package in writing, and say you will come back within a day or two. Accepting immediately forfeits your only negotiating window, and the enthusiasm you feel on the call is exactly what makes it a bad moment to decide.
How do I ask about the level during interviews?
In the recruiter screen, directly: "What level are you hiring this role at, and what's the band?" Raising a levelling concern early is far easier than contesting it at the offer stage, when the decision has already been calibrated and documented.