How to Prep for Software Engineering Interview Questions and Coding Tests

Written by Janey Zitomer
Published on Dec. 09, 2019
How to Prep for Software Engineering Interview Questions and Coding Tests
Brand Studio Logo

While domain-specific software engineering interviews might require, say, a deep knowledge of a framework like Angular, others focus on overall programming approach. For these types of interviews or questions, it's beneficial to show you have a keen problem-solving ability and the drive to build something optimal, rather than that you can finish a test quickly. 

“I want to show understanding above all, rather than stress the magnitude or difficulty of the problem,” said WEVR’s Sylvie Sherman. 

The key to demonstrating your strengths isn’t hiding behind a veil of flawless technical knowledge, but rather explaining what wisdom you’ve gathered from past mistakes. While every company takes a slightly different approach to software engineering interviews and coding tests, there are quite a few tools candidates can utilize to prepare themselves as best as possible. We asked four LA software engineers about how they’ve prepared for — and tackled — some of their toughest interview questions like, “How would you rate yourself at C/C++?” 

 

Convoso
Convoso

Travis Glover, full-stack software developer at Convoso, comes to interviews prepared. Specifically, he recommends having a constantly updated portfolio of side-projects handy to reference over the course of a conversation. Proof of game or app development, he said, underlines your dedication to the work and, consequently, the role. 

And if you get a technical question about a subject you’re unfamiliar with? Honesty is the best policy. 

 

You’ve found a posting for your dream job and landed an interview. What steps would you take to prepare for the coding test?

First, I would think about what technology the company uses so I could focus on studying the languages and concepts that might be on the test. Then, I would search for free coding tests that cover these technologies. Hackerrank, leetcode and the like are a good source for common technical and algorithmic interview questions.  

I would also make sure I had the algorithms fresh in my mind. It’s always a good idea to have a well-fleshed-out portfolio of side projects. This allows me to easily show off my ability to build an app or product from the ground up.

Hackerrank, leetcode and the like are a good source for common technical and algorithmic interview questions.’’

What are the toughest or most challenging interview questions that you've been asked, and how did you respond?

The toughest questions I’ve been asked have always related to subject matter where I have little expertise. Whenever this happens, I try to answer the question as accurately and honestly as possible. 

In my experience, however, non-technical interview questions are not particularly difficult. The trick is remembering that honesty will always guide you to the best answer. Furthermore, hypothetical questions do not necessarily have a right and wrong answer and can offer room for thought leadership.

 

Zwift
Zwift

Zwift’s Game Engineering Lead Luke Yen sees software engineering interviews just as much a company evaluation as a test of the candidate’s individual skill. If an employer seems condescending or competitive, it could be your cue to cut your losses.

Yen also recommends swaying difficult questions in your favor by focusing on specific strengths, like individual communication style or attention to detail despite unfamiliarity with a certain program. 

 

You’ve found a posting for your dream job and landed an interview. What steps would you take to prepare for the coding test?

Read the skills requirement and make sure you brush up on anything related to the position. I’ve seen engineers claim they’re familiar with algorithms, C++ or 3D math and then have difficulty providing the definition of some of the more basic terms. Most importantly, however, control your nerves and keep an open mind going into the interview. It’s not the interviewer’s job to defeat the interviewees by asking incredibly difficult questions or to show that they’re the smartest person in the room. At previous companies, I’ve seen interviewers come back from interviews boasting to the rest of the team that they broke” the interviewees. If you ever interview at a company that conducts high-stress interviews like this, it speaks volumes to the culture. That’s probably not the place you want to dedicate your time for the next couple of years. 

The right questions should allow interviewers to work with the interviewees to evaluate their logical thought process and ability to communicate ideas. So the best way to prepare is by knowing that you probably won’t have all the answers off the bat. Make sure you fully understand the problem by asking questions before you start to work on it. Communicate throughout the process so interviewers can continue to guide you. And always check your algorithm and look for edge cases once you arrive at a solution.  

Make sure you fully understand the problem by asking questions before you start to work on it.’’

What are the toughest or most challenging interview questions that you’ve been asked, and how did you respond?

How would you rate yourself from 1-10, one being the worst and 10 being the best, at [skill sets]?

This is a simple yet incredibly difficult question to answer. Although most of the time the interviewer is genuinely curious how an interviewee rates themselves at a certain skill set, the question might be maliciously intended or create an unconscious bias. If an interviewee answers anything less than five, the follow-up question is usually along the lines of, Why so subpar? Conversely, if an interviewee answers anything greater than seven, get ready for tougher questions to follow. If you answer with anything between six and seven, you run the risk of appearing mediocre.

When I run into a question like this, I usually point out that it’s difficult to answer. It largely depends on my day-to-day condition. I have good days and I have bad days. On days where I feel like I am at the top of my game, I usually rate myself higher overall. But if I woke up on the wrong side of the bed, I usually rate myself lower. In addition, as technical knowledge like C/C++ contains a broad scope of different fields, I might rate myself higher in areas I am familiar with and lower where I don’t have as much exposure. This response usually garners follow-up questions geared toward the fields of familiarity. Alter the questioning strategy to your advantage.

 

Wevr
Wevr

Partial credit isn’t reserved for seventh grade math exams; many coding tests are designed with the thought process behind the final response in mind.

According to Sylvie Sherman, senior software engineer at WEVR, showing your thought process can make all the difference in an interview. For difficult questions about previous roadblocks, Sherman comes prepared with a coherent answer format that speaks to her problem-solving ability.  

 

You’ve found a posting for your dream job and landed an interview. What steps would you take to prepare for the coding test?

Find out as much information as you can about the format of the test. How many questions will there be? How will you be answering them? Will it be done on your own time or with an interviewer? 

Do practice tests online and read up on anything you struggle with or any particular language features you think might be important. If your test is going to be with an interviewer, it’s important to talk about your thought process during your practice tests, even if you’re talking to yourself. Correctly answering a coding test is great. But explaining your thought process and approach is the part that really counts.

I want to show understanding above all, rather than stress the magnitude or difficulty of the problem.’’ 

What are the toughest or most challenging interview questions that you've been asked, and how did you respond?

I think questions about the biggest problems one has encountered in the past are really important to answer well, but can be difficult to speak about effectively. For questions like these, I try to follow a format in my answers. 

First, I explain the issue clearly, showing that I understand what the root of it was. Then, I explain what I tried that didn’t work and why. Finally, I explain how I ended up fixing it, the process that led me to that solution and how I’ve used knowledge gained from that experience moving forward. I want to show understanding above all, rather than stress the magnitude or difficulty of the problem.

 

Rapid7
Rapid7

While it's beneficial to go into a blind date with no preconceived notions of the other party, the same guidelines do not apply to interviews. Michael Huffman, principal software engineer at Rapid7, recommends learning the names of not only the company founders but any employees you might be directly working with or whose work you admire.

 

You’ve found a posting for your dream job and landed an interview. What steps would you take to prepare for the coding test?

First, I would learn as much about the company as possible. During an interview, a company wants to hear why they are a good fit for you and that you are genuinely interested in their domain, technologies and solutions. Learn the names of founders and CTOs and for extra credit, ask questions during the interview about how certain employees in the company grew and evolved during their careers. An interview should not be a blind date.

An interview should not be a blind date.’’ 

What are the toughest or most challenging interview questions that you’ve been asked, and how did you respond?

Unanswerable questions or questions that ask you to judge, guess or hypothesize an answer in a non-technical domain. Examples include, “How many tons of metal were used to construct the Eiffel Tower?” and “How many cars are in Los Angeles?” These pressure you to use creative thinking skills, interpolation and intuition. Great candidates will confidently ask questions, make sound judgement calls when guessing and come much closer than they expect.

 

Responses have been edited for length and clarity. Images via listed companies.

Hiring Now
InStride
Edtech • Enterprise Web • Social Impact • Software