Hiring People

I am fortunate enough to interview hundreds of people in my career and also was interviewed by many companies in the past. i wanted to write a post on it to share my experience with meeting lot of people and understanding them during this process.

While i am not a professional at this(don’t have any formal training etc) what i learn is from my experience. I observed interviewing a candidates requires assessment of his/her skills, the question comes how you should assess a potential candidate?

  1. assess him based on the job qualification and role?
  2. assess him based on the what he has done and can do?
  3. assess him based on what you(the interviewer) have done and what you know?

Lets take a detailed look at each of them:

  1. assess him based on the job qualification and role? – This approach focuses on the job role, it means if the job required working on a Python project, This approach will focus on candidates python skills. Many such interviewer will focus on just checking what work a candidate has done in python? language internals, in build functions, library uses etc etc. How does a candidate will solve given problem using his knowledge of python etc. This approach will basically check how much hands on experience a candidate has. depending up on the candidate you can expect an honest no i don’t know or a brief answer on the problem solving approach or a very detailed answer.
  2. assess him based on the what he has done and can do? – This approach will focus on what candidate has done in the past and how much calibre he has to adopt to new things and how will he solve given challenges to him even though he currently has not worked on him.This approach focuses on how quickly a candidate can learn and adjust to new work and possibly new culture. for example if a candidate has worked in C or C++ and is interested/interviewed for a python developer role. then this approach will focus on first on C/C++ problem and then how he can solve the new problems using C/C++ and then how he can solve same problem using python? in this case you can expect a detailed answer from a candidate on how he can solve problem using C/C++ and a brief or detailed answer on how he will solve this problem using python.
  3. assess him based on what you(the interviewer) have done and what you know? – This approach will basically requires an interviewer focusing on the skill he has rather then the candidate has. In this approach interviewer will ask question about what he knows and worked and try to expect more or less same kind of answer from candidates. for example if a interviewer has worked on networking, his question will be based on purely networking and candidate is supposed to confirm or know what interviewer knows. you can expect an basic or detailed answer from candidate or an honest No – i dont know this answer.

Now the question comes, which of above should be used? does any one of above is strong enough or you should use a combination of all of above?

In my case i prefer combination of all the above, i also combine it with different thing like his communication skills(how well he can express his thoughts over writing or verbally), convincing power and overall behaviour shown during the process.

Interviewing a candidate is complex process, many a times we miss good candidates or we hire wrong ones. the truth is you can not judge a person in few minutes or hours. no matter if its telephonic if onsite. you definitely will need different opinions from multiple people.Also make sure the candidate you are interviewing has a pleasing experience during the entire process and he should feel happy and motivated enough to join your team as you are the person most likely he is going to work with once he joins your team!