Notes & Thoughts

Interviews for Software Professionals

Interviews for Software Professionals

Five kinds of interview rounds

  1. DSA / Coding
  • Typically, the candidate writes code for one or two problems.
  • Most of the time, the expectation is a working and optimal solution.
  1. Machine Coding / LLD
  • Expectations can be ambiguous, but a full implementation is usually not required.
  1. HLD
  • This round covers system architecture and design.
  • Sometimes the expectation is to draw many moving components, even when a simpler system would meet the requirements.
  1. Behavioural / Leadership
  • This usually covers company-specific leadership principles and the candidate's work profile.
  1. Resume
  • The interviewer may discuss any technical skill that interests them.
  • A shortlisted resume already indicates that the relevant skills are present.
  • Projects and past experience are also discussed.

Types of interviewers

DSA haters

  • They may not value DSA skills and assume that someone who has solved many problems has memorised them.
  • Feedback should be based on problem-solving and implementation skills, not assumptions about how those skills were built.
  • More practice over the years is not the same as memorisation. If it is memorisation, a meaningful variation should expose it.
  • Some candidates also consider DSA irrelevant because of AI. However, at the core of our work, we still write functions. DSA evaluates challenging functions, complexity, and clean, optimal code.

Competitive programming lovers

  • The opposite bias also exists: some interviewers may ask questions that are too difficult.
  • Good interviewers recognise the difficulty and adjust expectations. They may expect a collaborative discussion rather than a complete solution.
  • Candidates should be evaluated on their performance during the interview, not only on a competitive-programming profile. Profiles can also be misrepresented.
  • Candidates should add competitive programming only when they have genuinely done it. A weak or artificial profile does not help.

Language / technology specialists

  • Some interviewers stay within one technology and expect candidates to match it.
  • This can create a matching-playlist bias.

Other biases

  • Bias based on language.
  • An assumption that the candidate is cheating.
  • Bias based on work experience or projects.
  • Bias around one particular question. For example, a debrief may focus only on a candidate not knowing about an artefact or the execution order of a SQL query.
  • Bias based on ethnicity, race, background, or gender. Interviewers need better training and should stop allowing these factors into the evaluation.
  • There is also a luck factor. As a candidate, recognise it and remain grateful when it has worked in your favour.

Message for candidates

  • Interviewers are generally among the top engineers in their teams. They are experienced. Irrespective of the category they fall into, approach them with a positive and respectful attitude.
  • Sometimes you reject yourself by deciding that a question is irrelevant or too hard. The interviewer may be evaluating how you handle a difficult situation, or expecting you to collaborate, discuss, and solve it together.
  • Understand that the interviewer's role is to collect data points for the hiring decision.
  • Respect every round instead of thinking negatively about why it is important.
  • You cannot control the interviewer's day or their familiar set of questions.
  • Research the company and interviewer: the projects they work on and the technologies or programming languages they know well. Use that context to communicate your answers better.

Message for interviewers

  • Look for the positives and collect data points for either side of the decision.
  • A candidate may have strengths different from yours. Strong engineers can be strong in different ways.
  • Adhere to the competency assigned to the round.
  • Collect enough data points for that competency first.
  • Do not rely on only one or a few data points for a hire or no-hire decision.

Sign in to like or comment.

Interviews for Software Professionals — Sanjay Gandhi