Interviews can be split into two categories: behavioural and technical. Depending on the type of interview, your preparation method and the way you handle the interview would vary.
Behavioural interview
A behavioural interview is focused on assessing your soft skills and how you would handle certain situations like failure, moving deadlines, etc. In this interview, they would also dig deeper into the experiences listed on your resume.
How to practice
The first step is getting familiar with the experiences on your resume and being ready to expand on the work you did. You can also note the skills you picked up, the timeline to learn them and any reflections from the experience.
Next, you should learn the STARR format and how to answer common behavioural questions in this format. It can be hard to answer questions in this format at first, but practice makes perfect! You can google common behavioural questions or use a website like Glassdoor to find company-specific questions.
Thirdly, you should review your elevator pitch and tailor it to the company you’re interviewing for. Along with this, you should also have an answer to “Why Company X?”. I’d highly recommend reading up on a company’s mission/culture, a couple of their blog posts and products. You want to focus on understanding the company’s culture and how it relates to you.
Lastly, you should prepare some questions to ask your interviewer in the last 5 minutes of your interview. Multiple people offer various questions and advice on what to ask your interviewer. My recommendation is to ask questions you feel comfortable with and remember that an interview is a two-way street, it’s a chance to learn more about the company.
💡External resource link:
- The author of the Blind 75 list created a Tech Interview Handbook and it has a behavioural interview section
- Cracking the Coding Interview book - buying the book or accessing it through the Toronto Public Library/CSSU
STARR format
STARR is an acronym for a specific method of storytelling or answering questions. STARR stands for:
-
Situation: setting up the context. For example, if you’re talking about a class, mention the class and what type of assignment it is, i.e., group or solo
-
Task: Mention the problem you’re going to solve
-
Action: the actions you took! Teamwork is amazing and you can add 1/2 sentences about it but focus on your actions. Remember to use ‘I’ when talking about yourself. Most folks tend to use ‘we’ in group project situations, so be mindful of that
-
Result: the result of your actions and the project/task
-
Reflection (this is an extra thing I like to add and is optional!): what you learnt from the experience
STARR example
Now if it’s your first time interviewing all this information can be very overwhelming so I’m gonna add an example:
Interview Question: Describe a time you had to learn a new technology for a project.
Answer:
- S: In my previous internship as a Web Developer at X startup, a financial education and empowerment platform,
- T: I had to learn React in 2 weeks as that was the tech stack.
- A: I knew the basics of HTML, CSS and JavaScript and built a simple web dev project prior. To learn React, I created a study plan and started building a project with the basics of React. Once I could understand the logic and syntax, I read through the company code base. Then I built the component I had been assigned and sent it to my manager for a review. He reviewed it, suggested some edits and shipped the feature.
- R: The component was reusable and ran on all 4 pages of the website.
- R: Creating a plan and asking for feedback helped me learn React quickly.
Common behavioural questions
All behavioural questions can be classified into 5 categories: success, failure, overcoming challenge/difficulty, a change in a challenge/difficulty and teamwork. Additionally, if you have past leadership experience, you could get a question on that. When you get a question in an interview and need to select an experience to talk about, take a minute to analyze the question and figure out which of the 5 categories it falls under. If you’re not sure, you can always double-check with your interviewer by phrasing it as a follow-up question. Your interviewer could either confirm or say something along the lines of “it’s up to you”, in these cases, I recommend picking an experience you haven’t spoken about yet and either guessing the category or going with your gut instinct.
For each of the five categories, I will expand a bit into what the category is and some example interview questions:
- Success: Typically the interviewer wants to hear about a time a project went well and how your work contributed to the project’s success. Some example questions are: “Talk about a project you are most passionate about, or one where you did your best work.”, “Tell me about a time when your work led to a project’s success”, “What is something that you had to push for in your previous projects?”, “What strengths do you think are most important for your job position?” and “Tell me why you will be a good fit for the position.”
- Failure: In this section, you should explain the failure in a neutral tone and explain how you improved the situation or overcame it. This could again be in a group/individual setting. Some example questions are: “How have you handled criticism of your work?”, “What aspects of your work are most often criticized?”, “What would you do if you did not meet a project milestone?”, “Tell me about a time in which you had a conflict and needed to influence somebody else.” and “Tell me about a time you had to work with a tough teammate.”
- Overcoming challenge/difficulty: The interviewer is using this question to understand how you persevere in the face of challenges. This section and the failure section can have a blurry boundary. The differentiating factor is that in this section you can focus on actions that positively influenced the outcome whereas in the failure section, you’re talking about the aftermath of a failed project. Some example questions are: “What is the most challenging aspect of your current project?”, “How do you tackle challenges? Name a difficult challenge you faced while working on a project, how you overcame it, and what you learned.”, “What is something you had to persevere at for a long time?” and “Tell me about a time you were assigned an ambiguous or challenging project and how did you work on it?”.
- Change in a challenge/difficulty: In this section, your interviewer is assessing your flexibility and how you react to adverse situations. They are also assessing how quick-witted you are and how you solve problems. Some examples are: “Tell me about a time you met a tight deadline.”, “Tell me about a time there was a change in priorities”, “How do you handle change?” and “Tell me about a time you influenced positive change?”.
- Teamwork: This section is where your interviewer is assessing how you work in teams and how well you would fit in their teams. It is also used to gauge your work style and how you react in stressful team settings. Some examples are: “Tell me about a time you led a team”, “Tell me about a time you disagreed with a coworker”, “Tell me about a time you disagreed with a manager/team leader” and “Tell me about a time you handle to work with a difficult teammate.”.
When answering a behavioural question, be mindful of when you use “I” and when you use “we”. The interviewer wants to know what you did in a project and how you handled the situation. So you should focus on the actions you took and then the impact they had. In a teamwork question, you should balance the amount of individual contributions against the group contributions. Try practicing mock interviews with a friend and have them tally how many times you mention each. If you can’t do it with a friend, record a video of you answering some common questions and do the tally yourself. Depending on the tally results, you might need to focus more on your individual work or your teamwork.
During an interview, you can always keep a notebook with you and take notes of the questions asked. You can also jot down talking points and use them to stay on track when answering a question. Sometimes your interviewer could ask multi-part questions and taking notes will help you keep track of all the parts and ensure you answer all of them. If you use the STARR method, you can use a numbered list/bullet list when making your notes to separate them into the STARR format.
Technical interview
First, check the Leetcode section on how to practice and specifically the effective Leetcoding practice. If you practice talking your thoughts out loud when you leetcode, it can be easier in a technical interview setting to also talk out loud.
In a technical interview, once you get the question, always take a couple of seconds to read it and assess whether you have all the information you need. You can write out some edge cases and use these to form clarifying questions. If you can’t think of any edge cases, explain the question back to the interviewer in your own words and then start brainstorming your solution. You don’t want to start coding first!
Once you have understood the problem, write out your solution in pseudocode or comment form as you talk about it and ask your interviewer if you’re on the right track. They could either say yes, stay silent or ask a question. If they say yes or stay silent, you can start coding and use your pseudocode or comments to guide your code. Again you would need to talk about the way you’re coding, the data structure choices and overall code cleanliness. Once you’re done coding, you can try running the edge cases manually and calculate the space and time complexities.
Depending on the interview format, your interviewer could either give you another question or ask you to optimize the current question. If you are asked to optimize it and cannot think of thinking, be honest with your interviewer as they may provide hints or ask for a couple minutes to think. If they give you a second problem, you’ll need to start this process all over again.
💡Free external resource link:
- The author of the Blind 75 list created a Tech Interview Handbook and it has both a coding and system design preparation guide
- Meta’s ABCS program (they may have either paused or stopped this)
- CodePath’s Technical Interview Program: This is a US-based non-profit, so you won’t be able to formally enroll in the program but you can request Observer access and view their materials.
- Uber Career Prep: Software Engineering Fellowship Program
- Cracking the Coding Interview book - access it for free through the Toronto Public Library or the CSSU
💡Paid external resource link: