Software Engineer interview questions
Grouped by interview stage, with what a strong answer actually sounds like — the part most question lists leave out.
When interviewing a software engineer, structure questions by stage and assess against the role's actual requirements. Software engineers design, build and maintain the systems a product runs on. The questions below cover screening through final round, each with what a strong answer sounds like and the warning signs of a weak one.
How to use these
Pick four to six for a 45-minute interview — not all 7. A well-followed-up question takes six to eight minutes, and the information is almost always in the follow-up rather than the first answer. Ask the same core questions of every candidate so you can actually compare them; vary the follow-ups.
Screening questions
Walk me through something you built recently. What was the hardest decision?
Why ask it: Establishes whether they built it or were near it, and whether they think in trade-offs.
A strong answer: Names a specific decision, the options considered, why they chose one, and what it cost them later.
A weak answer: Describes the feature without any decision, or describes a decision with no downside — real decisions have costs.
What part of that system would you change if you started again?
Why ask it: Tests whether they reflect on their own work. Engineers who cannot criticise their own code rarely improve it.
A strong answer: A specific, technical regret with reasoning about what it made expensive.
A weak answer: "Nothing really" or a generic answer about more tests.
Technical questions
Tell me about a bug that took you a long time to find. How did you eventually find it?
Why ask it: Debugging method is the single most transferable engineering skill and the hardest to fake.
A strong answer: A systematic narrowing process — what they ruled out and how. Mentions the false hypothesis they held too long.
A weak answer: A story that ends in "eventually I just noticed it" with no method.
How do you decide what to test?
Why ask it: Separates people who write tests because they were told to from people who understand what tests buy.
A strong answer: Talks about risk and change frequency — testing what breaks and what is hard to verify by hand.
A weak answer: Coverage percentages as an end in themselves, or "test everything".
Describe a time you disagreed with a technical decision on your team.
Why ask it: Most engineering damage comes from disagreements handled badly, not from wrong decisions.
A strong answer: Made the case, lost or won, then committed. Can articulate the other side's reasoning fairly.
A weak answer: Either never disagrees, or describes being right while everyone else was wrong.
Final questions
How do you approach code review — both giving and receiving?
Why ask it: Predicts how they will affect everyone else's output, not just their own.
A strong answer: Distinguishes blocking issues from preferences; asks questions rather than issuing instructions.
A weak answer: Treats review as gatekeeping, or as a formality to approve quickly.
What would you need from us in your first three months to do well?
Why ask it: Surfaces self-awareness and whether your environment will actually work for them.
A strong answer: Specific and realistic — context, access, a clear first project, a named person to ask.
A weak answer: Nothing, or a list that describes a company you are not.
Red flags for this role
- Cannot describe any trade-off in work they claim to have led
- Every past team was incompetent
- Talks exclusively about technologies, never about users or outcomes
What a software engineer actually does
Software engineers design, build and maintain the systems a product runs on. The role spans writing code, reviewing others' code, debugging production issues and making design decisions that constrain what is cheap to change later.
See the full software engineer job description, including how to assess each requirement.
Generate questions specific to your role — and that account for what previous interviewers already asked — with the free interview question generator.