I interviewed at Intercom, Dublin, for a “Product Engineer” role in June - August, 2019. I will be starting my Intercom journey on December 2nd, 2019 :D While preparing, I got a lot of help from Glassdoor and I thought of adding my interview experience to the internet too, for helping people in the future.
Update September 2020: The world has changed a lot ever since I interviewed with Intercom. In order to compensate for this new normal, the interview process has been changed a little. The rounds, by themselves, will still be a lot similar to what I have mentioned below, but their arrangement might have changed. Intercom might also have replaced/merged/broken down rounds to make it easier for candidates applying remotely.
Intercom’s was one of the most thorough interview processes that I have experienced/heard about, and it’s a good thing! It made me confident of the team I am going to be working with if all goes well. From what I could decipher from the rounds, Intercom is not only testing you technically, they also want to test you for your product skills and are judging if you will be a good addition to the team. They were also very responsive throughout the process, and the result of a round was shared within a week all the time (mostly within 3-4 days).
Intercom has also written a lot of resources to help you prepare for the interview. For starters, you should checkout this: How to prepare for software engineering interview questions. I will share links to Intercom’s blogs wherever relevant.
These rounds happen either asynchronously or over audio/video call (they used Google Hangouts for all my interviews).
This was a standard filtering round. Intercom gives you a small problem (which they have mentioned in a blog post) that you need to submit the solution for. They have also written a blog post about what you should take care of, how do they assess the activity etc. here: How to prepare for engineering interview assignments.
This is just a call to dig into your background, motivations and interests etc. You can take this time out to also ask them about the interview process.
Two-thirds of the call is “technical” and consists of basic Algorithmic and Data Structure based questions. My suggestion here will be to cover as many ”Easy, Top Interview” questions as possible from Leetcode. The remaining call is focussed on “culture contribution” which was similar to other culture contribution rounds (discussed later).
Intercom has multiple rounds where they want to assess “What contribution will you make to Intercom’s culture”. I liked that they call this round “Culture Contribution” and not “Culture Fit” because doing the latter could lead to a lot of biased decisions as they explain in their blog post. They also do a good job of explaining what you can expect in the interview and how do they evaluate candidates.
My suggestion here is that do not try to “wing it” in this round. It gets difficult to extract helpful examples from your past to show, for example, how you respond to negative feedback, on the spot! You need to be prepared beforehand and go deeper into your past experience and come up with evidence/anecdotes which you think is going to be relevant for the interview.
Some questions that I prepared for, or encountered in the interviews were:
- Tell me about a time when you built a product and it failed. Why do you think you failed?
- Can you think of an instance where you made a mistake while working with a customer? How did you handle it?
- In busy times, how do you prioritise your customers and interactions?
- Tell me about a challenging project, lessons learned and what would you do differently next time
- Tell me about a time you went beyond what was expected
- Tell me about one time you improved something without being told to
- Tell me about a project that succeeded and why do you think it did
- Tell me about a disagreement you had with someone and how you handled it
- How do you handle conflict?
- A recent decision you made that you would like to change? Why?
- Tell me about a time you got some feedback that you didn’t agree with.
- What do you do when you get feedback that you don’t understand?
If you clear all the previous rounds, Intercom invites you to their office in Dublin. This is a good opportunity to meet a lot of the team in-person, see the office. For people who haven’t been to Dublin before, it is also a great opportunity to see how you like the city (get the feelzzz).
This is a 1.5 hours long round in which you are given a small project (called Minicom) and you have to extend the codebase to add functionality. You are given 30 minutes to work on it by yourself, and then 30 minutes each to pair program with two Intercom developers. At the end, you are expected to do a little demo of the feature that you built and answer a few questions such as, “What other features would you add if you had more time”, etc.
Intercom explains in depth about this round in their blog post.
This is a typical technical design round in which you are expected to design the backend for the Minicom task you worked on, go deeper into it and add a lot of features. You are expected to be able to communicate your design by creating rough diagrams on the board.
This is a typical Data Structures and Algorithmic round, and involves solving 1-2 problems and writing code on a whiteboard in 45 minutes. The questions were still “Leetcode Easy” level, but they were more difficult than the ones asked in the technical screener at the beginning of the process.
The goal here is to figure out if you can think about the Product too and offer suggestions/opinions while you are working on Intercom. They try to figure this out by talking to you about a product that you like, and why do you like it.
There is no right or wrong answer in this round, I think they just want to hear you out, and understand how you think. Again, be prepared with a few products that you can talk about. You can get some followup questions, like what would you do if you were the CEO of that product? What do you think is the largest threat for them? Who are their competitors?
I will also suggest that you prepare for a few products that you are sure the interviewer will know about too. This makes the conversation interesting because the interviewer also gets a chance to share their opinions, and dive deeper.
This is similar to the Culture Contribution round, but certainly more gruelling for me (could be because I was tired by this time 😅).
This isn’t an interview round, but a time you get to ask as many questions about the role, the company etc. that you want.
Role chat: not an interview, you get to ask questions, but by now I was too tired. Still, I liked everyone involved in the rounds. Helpful and nice people.
All in all, I had a great time interviewing with Intercom. I got to meet around 7-8 people, which really helped me in getting a better idea about the people I could be working with in the future. Everyone that I had a chance to meet with was extremely warm and helpful.
PS: I had completely forgotten, but it turns out I had tried applying for an Internship 4 years ago (some audacity!). Such a fun thing to find 😁 Destiny then?