This goes for all the awesome interviewers out there - interviewing is not your ONLY job. Am I right? Well, don’t stop if you are nodding already. You have a plenty of other things to do - like dealing with a deadline which is long overdue or a sudden crisis. Now, you suddenly have one more addition to it; i.e interviewing the next developer( can also be applicable for any other position on this planet ) of your team.
You might or might not have a dedicated human resource person to guide you. Even if you have one and you are interviewing for a highly technical specific position, you are in a state of confusion. To make things worse, your google calendar might pop up 15 minutes prior to your 6 PM interview, thus reminding you that XYZ should go into production at 7 PM.
The above situation might create more adrenaline rush than watching “Scream” and in the process, some intricate details can fall out of your mind, the major one being the job description. We all know that the job description is created very carefully with a lot of intricate details after consulting with all the stakeholders.
In our year long of conducting technical interviews we have learned how important are the skillsets in the JD when it comes to deciding - “to select or not to select.” So, we decided to spare you the unnecessary pain and come up with a checklist which you must follow while taking any interviews.
1. Job responsibilities
They come under the job description under the skillsets. But often, you, an interviewer might forget to cover them all. Even if you cover them, you might be paying attention to the “description” and forget about the responsibility part. It is somewhat easier to answer a question with a theoretical approach, but it is the practical situation which should be more emphasized upon.
It is best to be prepared with a practical set of questions based on the key responsibilities of the position and then evaluate the candidates on them.
2. Categorize the questions
It is always best to refer to the jd and categorize the questions in the following sets.
These questions focus more on facts and data and are straight-forward in nature. You can pick out all the theoretical skillsets from the JD, make a list of all of them and start shooting. For example - “ The difference between direct buffer and non-direct buffer in Java?”
See if the candidate is providing an example as well besides answering the question theoretically. This helps you to understand the depth of the candidate’s knowledge.
The next type would be Open-ended questions, which generally fall into one of the following categories:
Here you can provide the candidate with a situation which has not really happened and ask him to come up with a solution.
For example, you can ask him to sketch a hypothetical software design solution or to simply explain about it in brief.
The candidate must address all the technical aspects of the problem including the frontend and the backend technologies as well as the database part. Also keep a note of his communication skills as it is a very important factor while communicating with the team or the client.
This kind of question analyzes the kind and quality of work which the candidate has done in the past. This is also a very tricky way to find out if all the information provided by him in the resume is true.
Typical questions include, “ Tell me about a project where you have worked successfully.” This is a carefully crafted interview question where you can appropriately gauge the experience and communication skills. Follow up to this question would be “How will you use that experience in our XYZ ongoing project?”
Here, an intelligent candidate would showcase how his experience is as good in reality as they are on paper. He would grasp this chance to link his past achievements to the present job description. Besides explaining the planning and execution of the project, a good candidate would also describe how he did overcome the obstacles with the help of his team. This would provide you with a glimpse if the person sitting opposite to you would be an asset for your team and would stand by you in hours of crisis.
3. Test coding skills
There are primarily two ways in which you can do this.
Online/Offline Coding exercise
By now, you have almost covered all the topics which were mentioned in your JD. Now let’s check if the candidate can walk the big walk. Having flawless concepts is, of course, a necessity but you should never ignore the importance of problem-solving skills, and that’s why a coding exercise should be conducted.
The candidates who pass the simple coding exercise are the ones who at least know how to solve a problem within a specific amount of time. I cannot emphasize enough on the importance of the problem-solving skills.
Suppose you are interviewing for the position of Frontend, and html5 and css3 are in the skillsets, you can ask the candidate to solve a given problem using these two technologies. If a particular framework is mentioned you might ask the candidate to implement a problem in a given framework. Also, you can get an idea of their code from this.
It happens that sometimes candidates doesn't have access to the computer. But that shouldn't be a barrier to verifying the coding skills. In these situations, go for asking the candidates on some programming problems based on the tech stack that you’re hiring for and suggest them to explain the solution in Pseudo-code to check the logic and directions on their problem-solving skills.
In the end, all you want is to onboard great people in your team and following the job description will always help in getting the right people.