Hiring

Thoughts & Learnings on Hiring

Hiring is essential. That’s an undeniable fact for all companies, big or small.

Rarely, individuals alone, no matter how talented or intelligent they are, succeed alone. You need a solid team who buys into your vision and works with you closely to deliver. It’s even more critical for startups to hire with caution as I don’t need to tell you how a bad hire is worse than no-hire. What are bad hires and the implications of having one is a separate topic of discussion. Over the past eight years or so, I have done a lot of hiring, interviewed many people, hired quite a few. I got lucky in most cases but not so much in a few. Based on my experience, learnings, readings, and shameless copy-pasting from some excellent references I came across, below are some things if you do right, the chance of making a bad hiring call reduces drastically.

I am not going to list down how to do a Design, Architecture or Data Structure round. Those are core skills. Internet is filled with questions to assess core skills. What I am listing down below has to be part of more or less each round. These are traits, smells to look for in candidates while you ask them core skill questions, challenging their opinions during your rounds. These are what forms someone’s personality. Skills can be acquired and learnt. I will also list out how would you detect or find such traits in people. What are some of the interview safe ways to do that?

Lastly, I will also list out things not to ask during an interview. They may seem obvious, but you would be surprised to see how many idiots exist in the world.

Traits

Smart

What is Smart? I will tell you what it’s not. It’s not pure knowledge of facts. So don’t interview like a Quiz show and make a hire or no-hire call based on how many questions someone can answer. What you are looking for is the Aptitude to solve technical problems. Give the candidate a chance to show real insights, his brain. Chances are, if he or she asks good questions, the conversation flows. Any skill set which people may bring to the job will become obsolete in a couple of years. Whether the candidate knows or doesn’t know a concept, if he is smart, there is a high chance he will be able to break down the problem, attack each piece structurally and reassemble the pieces. Well, this is what’s called First Principal Thinking.

Get Things Done

So, you have smart people. A bunch. Deep thinkers who can correlate theoretical relationships between two distant concepts. Well, good luck shipping your software on time. You need smart people who can get things done, stick to schedules, churn software, iteratively improve things rather than come up with impractical solutions which look beautiful on paper. Again, smartness is essential. Otherwise, you will end up re-implementing everything over and over again. At the same time, so is practicality. A software company has to deliver; you guessed it right, “Code”. Not just cook ideas and prove theories. Give the candidate a chance to have a working solution. See if he is iterating over it. Something we commonly call the brute force method. See if he is making progress with some assumptions, which don’t hurt the problem’s overall scope. You don’t want someone to strip a problem from all its complexity and have a worthless solution.

Aware

So now you have smart people who are shipping code. Do they know what assumptions they have made? Do they know the limitations of their solutions? Heck, do they know what they think they know and what they don’t? A person must be aware of limitations, shortcomings of himself, and his solutions. You neither want systems nor people who break down at the first sign of something unexpected. Awareness is the key even to begin finding a fix or solution to a problem. You can’t find an answer unless you know there is a problem. It becomes more critical when it comes to self-awareness. If you come across people who have glaring blindspots, which they don’t know about, wrap the interview and politely send the candidate home. You want people who are aware of their limitations or acknowledge that they are missing something given some evidence.

Passionate

As one of my friend Neelesh says, Passion is Transferrable. If you are passionate about something, you may get passionate about other things too. Without passion, people hardly take care of their work or motivate others. You want people who have an inspirational relationship with their work rather than an adversarial one. For a startup especially, the first few hires have to be passionate. You might live with a few 9 to 5, ers but too many of them, and you become a slow-moving corporate than a fast and agile startup. You can sense it from people’s voice, tone and excitement if they are passionate and proud about something. They will defend their beliefs, their solutions, proposals. They will stand their ground. Sometimes for the wrong reasons, but they will. If they are wrong and you show them evidence, that’s where self-awareness kicks in.

Articulate

So you came across this genius programmer, a nerd who has worked on complex systems and algorithms (at least on the face of it). He is throwing big words and terminology around, and you seem to be lost or, instead of taking notes, are referring to Wikipedia to look up what the hell is he smoking. Please request him to explain things to you as if you are his grandmother. This is an excellent test of someone’s communication and articulation. If a candidate cannot put across his ideas because he is either too great or too introvert, the chances are that this person isn’t a fit for the team. Effective teams require effective communication. Effective communication requires articulation.

Leadership

Have you come across people who blame their circumstances, bosses, colleagues for their failure all the time? Have you encountered cry babies who complain about different situations, big or small but never attempt to solve them. As per them, someone else is responsible for fixing all of those. Stay clear of such people. It’s vital to gauge if the candidate can overcome institutional inertia, adversity, take charge of situations when needed and move forward. It’s incorrect to believe that people who begin their careers as junior engineers don’t need to exhibit Leadership. People at so-called “Leadership” positions are the ones for who this is an important trait. It’s crucial for everyone despite their seniority. Well, how do you assess it? Generally, people’s reasons for a change of job, past experiences and situational questions are the best way to determine how they may react in different situations. Is he ready to take charge or always thinks it’s someone else’s responsibility? Additionally, Leadership includes navigating through fuzziness and understanding organisational constraints that range from budgets, the number of promotions, headcount, and even deadlines. It’s always easy to blame that a team didn’t have enough people, enough resources to miss timelines, it’s hard to figure out what a team can achieve with what you have, continue to make progress despite constraints.

Invest in self

I have learnt it the hard way; skills aren’t forever. You have to continue to hone them, invest in keeping them alive. It’s especially true in technology as it’s continuously evolving. Significant advancements are happening in communication protocols, databases, cloud, machine learning, and its critical one must invest in keeping himself aware of what’s happening in their areas of direct ownership, at least and maybe others. See if the candidate follows blogs and knows some prominent people or companies who work in those areas. Additionally, does a person have hobbies, meaningful ones? I have often observed people implying that lazying at home watching Netflix counts as a hobby. Sorry, it doesn’t. At least not a meaningful one. I have also observed people confusing travelling with going to the mall or hanging out with friends in a cafe 30+KM from their place on the highway.
Additionally, I also generally ask their favourite quotes and a few people they look up. All these are proxies to figure out if the candidate continuously learns, evolves and is passionate about something in life.

Duration

I believe 1 hour is crucial for you to assess a candidate properly. Anything less has been insufficient for me (unless it’s a slam dunk no-hire, in which case, I try to politely wrap up the interview in 40 min and save myself and the candidate from misery). Anything more becomes impractical as you scale up. Also, it does put an additional burden on the candidate as well as the interviewer. The optimal time to decide on the candidate is about three minutes after the end of the interview. Far too many companies allow interviewers to wait days/weeks before turning in their feedback. No matter how many notes someone takes, which is another topic of discussion later, there is information loss in cases where you delay it beyond 15 min. Within 15 min of ending the interview, the interviewer should capture his decision along with justification.

Decision

If you are having trouble deciding, it’s generally No-Hire. Just don’t hire people that you aren’t entirely sure about. This is quite uncomfortable the first few times—what if we never find someone good? That’s OK. If your resume and the phone-screening process work, you’ll probably have about 20% hires in the live interview. And when you find one, you’ll know it. If you’re not thrilled with someone, move on.

Strict No No !!

Avoid illegal questions. Anything related to race, religion, gender, nationality, origin, age, sexual orientation, veteran status, marital status, whether someone has kids or not, or planning to, what school they go to etc. Stick to questions relevant to the job.

See also