devlk
Careers

Software Engineer Interview Process: What to Expect at Each Stage

What happens at each stage of a software engineer interview, from the recruiter call and coding test to technical, system design and final rounds.

Software engineering interviews follow a fairly standard pattern, even though every company adds its own variations. Knowing the stages in advance means you can prepare for each one properly instead of being surprised.

Here is what typically happens, what each stage is really testing, and how to prepare.

1. Recruiter or HR screening#

Format: a 15–30 minute phone or video call.

What they are checking: that your experience roughly matches the role, that you can communicate clearly, your notice period, your salary expectations, and (for remote roles) your location and working hours.

How to prepare:

  • Have a clear, two-minute answer to "tell me about yourself". See how to answer "tell me about yourself".
  • Know why you are interested in this company and role.
  • Decide your salary range before the call. If you are asked for a number early, it is fine to ask for their budget for the role first. Our salary negotiation guide has exact wording.
  • Prepare one or two questions about the team and the process.

2. Online assessment or coding test#

Format: a timed test on a platform such as HackerRank or Codility, usually 60–120 minutes with two or three problems.

What they are checking: basic problem solving, data structures, and whether you can write working code under time pressure.

How to prepare:

  • Practise common problem types: arrays and strings, hash maps, two pointers, sliding window, stacks and queues, trees, graphs (BFS/DFS) and simple dynamic programming.
  • Practise in the language you will use in the test, so you know its standard library well.
  • Read every problem fully before coding, test with edge cases (empty input, one element, very large input), and submit a working solution before trying to optimise.

3. Take-home assignment (some companies)#

Format: a small project to complete in a few days, often meant to take 3–6 hours.

What they are checking: how you structure code, test it, document it and make trade-offs, which is closer to real work than a timed puzzle.

Our guide to take-home coding assignments covers how to stand out without spending a whole week on it.

4. Technical interviews#

Format: one or more 45–60 minute video calls with engineers. Usually live coding, a discussion of your past work, or both.

What they are checking: not just whether you reach the answer, but how you think. Interviewers want to see you clarify the problem, explain your approach, write readable code and test it.

How to prepare:

  • Think out loud. Silence makes it impossible for the interviewer to help you or give you credit for good reasoning.
  • Clarify first. Ask about input sizes, edge cases and expected output before writing code.
  • Start simple. State a brute-force solution, then improve it. A working simple solution is better than an unfinished clever one.
  • Test your code by walking through an example by hand.
  • Know your own CV. Be ready to go deep on any project or technology you listed.

5. System design interview (mid-level and senior roles)#

Format: a 45–60 minute discussion where you design a system such as a URL shortener, a chat app or a news feed.

What they are checking: whether you can gather requirements, reason about scale, choose sensible components and discuss trade-offs.

Read our beginner's framework for system design interviews for a step-by-step approach.

6. Behavioural or culture interview#

Format: a conversation with a manager or senior team member about how you work.

What they are checking: collaboration, ownership, how you handle conflict and mistakes, and whether you would work well in their team.

Prepare five or six real stories using the STAR method (Situation, Task, Action, Result). Our guide to behavioural interview questions for developers has examples.

7. Final round and offer#

Some companies end with a meeting with a senior leader or the founders. After that, the recruiter calls with a decision. If you get an offer:

  • Ask for it in writing, including salary, benefits, start date and notice terms.
  • Take a day or two to consider it. That is normal and expected.
  • If you have more than one offer, compare them properly. See how to compare job offers.

How long the whole process takes#

Anything from one week (small startups) to six or more weeks (large companies with many rounds). It is reasonable to ask the recruiter at the start: "What are the stages, and what is the usual timeline?"

Questions you should ask them#

Interviews go both ways. Good questions include:

  • What does a typical week look like for this role?
  • How do you review code and deploy to production?
  • How is performance reviewed, and how do people get promoted?
  • What is the biggest challenge the team is facing right now?

Key takeaways#

  • Most processes go: recruiter screen → coding test → technical interviews → (system design) → behavioural → offer.
  • Each stage tests something different, so prepare for each one specifically.
  • In technical rounds, how you think matters as much as the final answer.
  • Prepare real stories for behavioural questions and real questions for the interviewer.
  • Get offers in writing and give yourself time to decide.

#interviews#job search

Written by

devlk Team

Editorial team

The devlk team writes practical career guides for software developers: salaries, interviews, remote work and getting paid from abroad.

Get new guides by email

Salaries, remote jobs and career guides for developers. One email when something new is published. No spam.