07 December 2017

Interviewer Essentials

A great part of my weekend goes to interviewing and a considerable amount of my time during my weekdays is devoted to hiring and activities related to hiring - profile screening, talking to the candidates, interviewing - technical and softer aspects.

What I learned are (over a period of time)

To Interviewers and to their managers (the source of problem but who think that the fault is on everyone but them)
  1. In the part of the world that I live in especially - be ready to read more (do not get bored or scared of seeing the projects and skills that one acquired 10 years back that never eroded)
  2. Shortlist quickly and ask HR to schedule interview
  3. Be available on time. If you have some work and you would join late, send someone who can do interviews (not just filling the space/time)
  4. Interviews are a business transaction. The interviewer has to sell the company and the future employee is likely to undergo. Not a fancy future that would never materialize. Be pragmatic on what you say
  5. You cannot get super-man when you pay peanuts. Reset your expectations
  6. Expect that someone can become super-man after she joins. Look for track record
  7. People want career, money, satisfaction, appreciation, feedback and a great culture (only the order differs from people to people). Do not oversell anything (as people might feel they won't get other stuff)
  8. You may be leading machine critical things but do not expect the folks to burn might night oil. Do not boast either
  9. Interview for the position (do not interview like you are hiring a CEO when you are hiring a developer). It is big sin to hire a developer without coding. Satisfied with pseudo code or "I can tell the logic" is the biggest sin. If you are hiring for senior position, start with design and drill down to coding (or start with code and move to design - bottom-up or top-down either way is fine, but do it)
  10. Often neglected piece is asking them to write unit tests for their own code. They might even write just two test cases, but it is fine. The question is whether they "think". If someone is allergic to writing unit tests - never look back
  11. Giving clues is not a sin. When you give hints, you really know more about the candidate (whether he picks up quickly and able to connect the dots). When you give clues, ask them to enhance.
  12. Do not ask funny or fancy questions on DS and Algo (which you were not able to solve for three hours but once you solved you want others to solve in 10 minutes) when your daily work is something else
  13. The world is moving more towards OpenSource, please see whether the candidate has allergy towards the word - OpenSource (and self-learning/training/exploring on their own)
  14. Give them the runway - Not all will be able to crack everything first and not always. Warm them up
  15. Listen properly and be attentive. Ask questions and answer questions properly
  16. Most often you will learn things from others, interviewing is no exception
  17. Decide as soon as the interview is over. Overthinking is killer
  18. Help HR. Maybe they have so many candidates to take care. Pick your resume, invite the candidates and take care of interviews. Keep HR informed on outcomes
  19. If the candidate asks feedback, spend some time with them in giving feedback (especially if they are very junior to you and looking to improve themselves). You never know when you will work for a nerd
  20. No frustration (even if your day is tiring)
  21. After hiring, connect with the candidate. Try to see whether you can be of any use to them.
  22. Wait for them to join
  23. Most importantly - remember that you are hiring a human, not a machine. Behave appropriately
Of course, this is not the bible to do interviews and there are zillions other things to do.

Your comments?