Guide to Technical Recruiting and Hiring notes

Introduction

  • Fit for a role goes beyond certifications or degrees; diversity in backgrounds is valuable.
  • Companies often underestimate the impact of the candidate’s experience (asymmetry of power).

Foundations

  • Values shape culture; careful definition is crucial.
  • A company without explicitly defined values will still have a culture – just one that stems from the personalities and behaviors of its leaders and early employees, rather than one having any careful thought, design, or purpose.
  • Avoid competition for a homogenous candidate pool; rethink hiring criteria.
  • Consider interactions as mutual evaluations; combat cognitive biases.
  • Recruiting is a product; balance effort and investment.
  • You can iterate on your criteria and assessment methods over time but don’t bend them inconsistently on a candidate-by-candidate basis.
  • When teams try to put together a flowchart of their established (and, they believe, clearly understood) process, they are often surprised to discover that not everyone expects the same things and at how complex things have become over time.

Internal Alignment

  • Levels support growth but may undermine intrinsic motivation.
  • Separate management and IC tracks for career progression.
  • Balance titles’ significance with actual job responsibilities.
  • Transparency in compensation is crucial; avoid exceptions.

Connecting with Candidates

  • Resumes are poor predictors; focus on real-world abilities.
  • GitHub stars and code projects are powerful signals.
  • Behavioral questions communicate company values.
  • The main question isn’t “Does this candidate seem likely to fail my interview process based on their qualifications?” but rather “Would this candidate be excited to work on the stuff we’re working on?”
  • A candidate’s ability to write about their work with clarity is highly valuable and is likely to translate to good communication skills in their work.
  • Strong narratives connect the mission to the candidate’s role.

Interviewing

  • Design interviews mirroring actual work; include behavioral assessments.
  • Trial employment requests may hinder diverse candidates.
  • Avoid literal grading; consider diverse perspectives.
  • A nervous candidate who feels unwelcome or out of place won’t give an accurate signal of their abilities.
  • Provide data and feedback to interviewers.
  • A common pitfall for junior interviewers is to grade candidates’ answers based on how they would solve the problem; they may be very literal in interpreting right and wrong responses based on a rubric.
  • If you take too long to give a candidate any feedback at all, they may read the silence as impolite disinterest on the part of the company or convince themselves they don’t want the job anymore.
  • Structured interviews predict performance better than casual ones.
  • A good interviewer understands where their intuition is coming from at least well enough to explain it to others or to highlight ways to evaluate whether the intuition is accurate.
  • Be wary of adding too much to the interview process.
  • Avoid unnecessary constraints on language or environment – may provide a poor signal.
  • Mastering live work requires its own set of skills, distinct from coding abilities, as it involves managing anxiety and maintaining focus.
  • Among different interview methods, take-home assignments likely have the lowest chance of providing incorrect assessments for companies. Follow-up discussions are crucial after a take-home task, marking the initial stage of a broader conversation. Take-home assignments may disadvantage individuals with families, financial challenges, or multiple jobs. Timing take-home assessments is challenging and can lead to unfair evaluations, as candidates may spend varying amounts of time on the task.
  • Clearly communicating the evaluation criteria, such as code quality, creativity, or speed, is important when assigning tasks to candidates.
  • A strong candidate should showcase problem-solving skills, the ability to learn from mistakes, and the capacity to refine solutions.
  • Anything that feels like it could even possibly be considered a mind game is bad territory to be in.
  • While interviewers aim to highlight candidates’ strengths, it ultimately falls on the candidates to demonstrate their abilities effectively.
  • Despite having a rubric, defining a precise standard for good or bad performance can be challenging, allowing room for human judgment.
  • Justifying decisions in a write-up involves providing concrete evidence based on the rubric, and identifying which criteria were met or unmet.

After the Interviews

  • Foster healthy debate; diverse perspectives in hiring committees enhance decisions.
  • Bar raisers ensure objective assessments.
  • Balance local team decisions with consistency in hiring.
  • Consistent red (or green) flags across interviews indicate significant behaviors.
  • Frequent struggles in deciding on candidates may signal a poorly designed process.
  • Provide transparent feedback to candidates; ensure rigorous decision-making.
  • Industry trends toward pay transparency; be fair to build trust.

Teaching my kids programming & math

For these exercises, all you need is some creativity and pen & paper.

The crucial bit is to come up with some exercises in order to get their attention. Find what they enjoy playing with, and gamify it. If they like pets, make commands to e.g. feed a pet. If they want toy soldiers games, make commands for e.g. moving and attacking.

Continue reading “Teaching my kids programming & math”

Philosophy for Everyone

While I was reading a book on the history of philosophy (1/3 through it), I became interested in philosophy in general.

I enrolled in a Coursera course Philosophy for Everyone, which seemed to be very popular. There’s also a book for it. In this post I will write an overview of every week and what I learned.

The way I consumed the content was to first read the handouts, write a quick review of them on this blog, and then continue by watching the videos.

Continue reading “Philosophy for Everyone”

A simple fact about politics

Disclaimer: I am not a politics expert (whatever that may mean) nor have I read any books about politics. My background is in software engineering and maths.

Every party wants to be the ruling party

  1. A political party is formed with the intent of it to be a ruling party.
  2. A political party spends resources on marketing.
  3. Therefore every political party wants to be ruling.

Every politician must lie sometimes

  1. Assume a politician of a party A always tells the truth.
  2. Assume there’s an opposing party B.
  3. Since every political party wants to be ruling, opposing party B can abuse the truth.
  4. Since every political party wants to be ruling, Party A doesn’t want the truth to be manipulated and lose points.
  5. Therefore it is not the case that a politician of party A always tells the truth, that is, a politician of party A must lie sometimes. Without loss of generality, every politician must lie sometimes.

Lying can be a simple fact about GDP, or even worse when combined with the fact that every party wants to be ruling: manipulate the population into believing that the other party is the ultimate evil.

Sophie’s World: History of Philosophy (part 1)

I’ve recently started reading this book, and it’s been a great summer read for me. It is about a 14 years old girl who starts receiving letters from a mysterious person that is explaining philosophical concepts and trying to capture the beauty of philosophy.

The book is full of ideas and in this post, I will post a brief overview of the topics and the thoughts that came to me as I was reading it. (Mainly writing them down for my future self, even though I might have different thoughts if I re-read the book at a later time 🙂)

Reading strategy, for each chapter:

  1. Skim through it
  2. Read it and, as reading, take notes and add them to blog posts like this
  3. Iterate on the notes one more time using the study guide linked in every chapter
Continue reading “Sophie’s World: History of Philosophy (part 1)”