Summary of the Software Engineering Interview Process
- Phone screen with recruiter or hiring manager: A 30-minute phone or virtual conferencing meeting to get to know more about you and discuss your resumé.
- Interview & technical assessment: Interviews with hiring managers typically consist of an informational conversation (see more on behavioural and situational questions below) and conclude with the technical skills assessment.
You may be asked to do a take-home assignment, where you complete your technical assessment asynchronously, as an alternative to doing it live. Some hiring and human resources managers may ask you to team up with an existing team member and work through pair-programming to solve a shared challenge. This interview tends to last anywhere between 60-90 minutes. - Panel interviews: A group, or a series of individual, interviews with peers, business stakeholders, and team members. You can largely consider this the “culture fit” interview where various people from the team, and maybe even from around the company, are given the chance to assess candidates.
Remember this is an opportunity to ask your potential coworkers questions about their work styles and preferences as much as you’re answering questions about yours.
The Three Kinds of Software Engineering Interview Questions
- Behavioural interview questions: Questions about your previous roles and responsibilities, your work habits, your communication style, and whether you’d be a good fit culturally
- Situational interview questions: Questions gauging how you manage and/or react to different people and circumstances in the workplace and your approach to problem solving
- Technical interview questions: Questions assessing your skills level, knowledge, creativity, and subject matter expertise
Sample Behavioural Interview Questions
- What interests you about this role/company/industry?
- Tell us about a time that you made a difference or your biggest accomplishment.
- Describe a project that didn’t go as well as you had hoped. How did you react and what were your next steps?
- What’s your approach to advocating for your ideas and solutions or getting buy-in from multiple stakeholders?
- Talk about a time that you went through a big change at work, how did you adjust to the circumstances?
Sample Situational Interview Questions
- The project you’re on is running over schedule, but you see a critical error in the code that could cause bigger problems down the line. What do you do?
- Tell us about a time that you had to address a conflict or misunderstanding with a coworker.
- What would you do if you were unsure about the goals or direction of a task or project? How do you identify your next steps in that situation?
- Let’s say you’re in a meeting with a client and they ask you for a feature that isn’t on the roadmap yet, how would you respond?
- You find out that you have half the time to deliver a feature than you initially planned for, how do you adjust for the new timeline? How do you handle surprises like that?
Sample Technical Interview Questions
- From your experience, describe the key elements of agile software development.
- Which programming languages are you the most fluent in? Rate your proficiency in each.
- What’s your approach to QA and testing? How do you check your own work for accuracy?
- What do you do when you get stuck on an issue? How do you resolve it?
- In your opinion, when is a product or project ready to release?
- Do you work on any of your own projects or have you worked on any open source projects?
- Are you currently a member of or a contributor to any developer communities? Are you working on any side projects?
- Tell us about the type of work and challenges that interest you most.
How do you Prepare for a Technical Interview: A Step-by-Step Guide
Learn how to weave a story from the jobs listed on your resumé by answering questions like:
- Why did you take that job?
- What did you do in that role?
- Where did you excel?
- Why did you move on from that role?
Remember that your career progression doesn’t have to be linear to be meaningful. Sharing your story in terms of how you’ve followed your curiosity and taken on new learning opportunities is a surefire way to win over recruiters and hiring managers.
Practice working out loud with a friend beforehand to ease any nerves or performance anxiety.
It’s better to seek clarification than to continue on blindly and risk making a costly mistake. A big part of the technical interview is actually about testing your communication skills.
- Was the goal of this feature to perform this function?
- Do you know whether anyone has tried taking this action before?
- Did I hear you say that this piece will flow into this section?
- Do you know of any potential risks if I were to do this?
One thing we tend to forget is that interviews go both ways.
Following up on Your Technical Interview: Dos and Don’ts
Do:
- Ask for a timeframe or window for when the hiring team will be making their decision.
- Follow up after 1-2 weeks if you haven’t heard back from the hiring or recruitment manager.
- Ask for feedback on your interview performance, especially if you don’t land the job.
- Send multiple follow-up emails if you don’t hear back within a reasonable amount of time; give the hiring manager space to make their decision and go through their process.
- Follow up with a list of things you would have said and done, but didn’t at the time.
- Take every rejection to heart. If you ask for, and receive, feedback that’s a gift as well.