Main illustration: Leena Kisonen
The engineering interview presents a unique opportunity to showcase your company’s engineering culture and values to potential new hires.
It may be a candidate’s first substantial interaction with your company, and just as you would build a great first experience for your customer, it’s equally important to build a great interview process for your candidates.
After spending months interviewing at companies of various sizes and success, I saw firsthand the unique styles of interviewing and testing across our industry. It struck me that most of these interviews were so far removed from the daily routines of a software engineer. Rather than test resourcefulness and basic foundations, a lot of these interviews tested random bits of specific knowledge that could easily be looked up with a Google search.
Most interviews are so far removed from the daily routines of a software engineer.
At Intercom, the interview process is different. The premise is simple: build a smaller version of the Intercom Messenger, dubbed “Minicom,” in a set of amount of time. After you get the basic functionality working, you can choose which features to build out and what parts of the product you would optimize. At the end, you demo your product and explain the reasons behind your product and design decisions, and even explain what else you’d build if you had more time. It’s always interesting to see where people focus their time and whether they care about getting something into customers’ hands quickly. During the interview, you also do pairing sessions with Intercom engineers where they help you with any problems you might have run into along the way.
Now that I’ve been at Intercom for a couple of months, I can see that our interview process is a great reflection of the way we work.
We ship to learn
Our shipping philosophy is to start small, build cupcake-sized products and iterate quickly. Minicom is a perfect representation of this philosophy. It is literally the smallest possible demo that you believe you can build in the short amount of time provided, that adds maximum value. Shipping is our heartbeat at Intercom and we actively ship to learn. We understand that a product built over an interview isn’t going to be perfect. We let our candidates explain their design decisions and what they learned along the way. We also ask them what they would do differently if they had more time, to hear how they would apply these learnings in the future.
We are collaborative
At Intercom we inherently believe that the best work is done when people work together – playing to their strengths and leaning on others to to help with their weaknesses. The pairing sessions achieve this. These sessions mimic a real world experience and are there to help you achieve your goal and test your collaborative skills. I remember I made a list of things I couldn’t look up on Stack Overflow or figure out, and during the pairing session I was able to ask for help and get them solved quickly. This is something I still do almost everyday working at Intercom.
As someone who is very passionate about building things, the pairing session was like a dream come true. I had the opportunity to work on parts of the stack that I was familiar with and lean on a couple of talented engineers to help me complete the task. At the end of the interview I got to demo my creation to a group of engineers that were genuinely excited to see what I built. They even gave me a round of applause and thanked me for my time at the end of it. When I walked out of that building, it was clear to me that Intercom had valued my time and had provided a collaborative environment that I enjoyed working in.
We value learning curves
We also care a lot about rate of learning. As a company that’s growing very quickly, we have to constantly iterate and learn new things along the way in order to be successful. Testing engineers for curiosity, skills and potential ensures we hire people who can scale with the company as it grows. Even if our candidates don’t have much pre-existing knowledge of our particular stack, we believe that if they have strong fundamentals and a fast rate of learning they will be very successful here at Intercom. Or, in the words of Stanford Professor John Ousterhout, a little bit of slope makes up for a lot of Y-intercept.
Interviewing is a two-way street
As much as we interview a candidate, it’s important to know the candidate is also interviewing us and evaluating us as a potential workplace. That is why it is important for us to respect the candidates’ time and build an interview process that is transparent. It is difficult for a candidate to judge a company’s culture in a single day and hence creating an interview process that communicates this culture best will help both Intercom and our candidates make more informed decisions.
We teach what we preach. Whether it’s building cupcakes, or our belief that the best work is done in teams, our interview process tries to mimic our engineering culture and values. At the end of the day, whether or not the candidate and Intercom are a good fit for each other, we want them to tell their friends and coworkers what a great experience they had regardless of the outcome. We’ve done a lot to try and make our interviewing process personal and transparent.