2 Main Types of Interview Questions for Software Devs
Whether you are the Master of C#, Goddess of MapReduce, or aspiring Javascript Ninja, super qualified software engineers sometimes end up failing the interview portion mainly because they were not fully prepared for it. Just like referencing Github or Stack for code, the best way to prepare for your interview is to know what to expect when the time comes. The type of software engineer interview questions can vary from company to company, but I've come to realize that there are typically 3 main types being asked.
While it might sound easy at first to interview, there is a certain way you are supposed to respond to those types of questions to come off as confident and qualified as you can. For instance, a non-technical question “Why do you want to work for our company?” can completely wreck an interview.
Let's hack this thing.
2 Types of Interview Questions
During the interview process, there are typically 2 types of questions you will be asked. The first type are general questions about yourself which are usually asked by the HR department. The second type of questions deal with your job description and are very technical.
General Questions
These are the questions that are asked at all interviews, regardless of the type of job you are applying for. The reason these are asked is so the company can get a better understanding of who you are. A lot of times they will have questions about your resume and your experience at your previous job. It is always important to be honest when answering these questions because if you get caught or if they think you are lying, you are pretty much out of the picture.
Here is a list of some general questions you might be asked:
- Why did you leave your last job?
- What are your career goals?
- Tell me about a time you turned in bad code. What did you learn from it?
- Why did you want to be a software engineer?
- What are some key projects you worked on?
- Tell me about a previous project you have done, that would be related to our field/stack?
- What were the results?
- What was the most challenging project you have led so far?
- Tell me about a time that you worked with others on a team. What was your role?
- What do you know about us?
Technical Questions
Since you are interviewing as a software engineer, the bulk of your questions will be technical. When it comes down to it, companies want an engineer who is smart and knows how to solve problems. To hire the best candidate possible, they will need to ask you challenging questions, yet relevant questions. Sometimes you will be asked questions that do not entirely fit your job description to test whether or not you are open to learning additional languages when confronting a new solution.
Again, the technical questions depend on what role you are interviewing for with their team and their tech stack. For example, if you are applying as a JavaScript engineer, you will most likely be asked questions about jQuery method and how a web browser works. If you are trying to become a data engineer, you can expect to be asked about SQL. If your a python dev, you might want to know how outputs would change from Python 2 if converted to Python 3 syntax. With that said, be sure to study and ask questions up front from the interviewer about what you are expected to know for the job.
It is also important to note that the technical questions being asked will vary from algorithms, to construction, to implementation and design. A lot of times there is not a right or wrong answer - meaning it is entirely up to you to explain why you answered them the way you did. The goal of this is for the company to get a better understanding of how you interpret concepts and ideas and how well you can explain them.
Below is a list of some basic technical questions that you might see at your next job interview:
- Which tools do you use for keeping track of requirements?
- How do you design scalable applications?
- What are metaphors used for in functional design?
- What language to you prefer for writing complex algorithms?
- Which tools are needed for testing the quality of your code?
- What is SOLID?
- How do the MVP, MVC and MVVM patterns relate?
What are some other types of questions that developers and engineers are asked?
As a Senior Executive Recruiter, Brian Fink focuses on driving talent towards opportunity. Crediting his experiences as a fraternity rush chairman at The University of Georgia, Fink aims to stretch the professional capabilities of everyone he works with. Whether he's helping startups grow and successfully scale their IT, Recruiting, HR, Product, and Executive Leadership teams, Fink thrives on discovery and building a better recruiting mousetrap. Follow him on Twitter.
Excellent advice Brian, thank you