Interviewing and dating are strangely similar. I assumed they’d magically work themselves out without additional effort on my part! I kid… I kid…

Expect to Be Rejected a Lot

It’s inevitable, but being rejected is the only way to build up a tolerance to rejection.

The Best Leads Are Through Your Social Circle

I’ve never lived Patrick McKenzie’s scenario where the company has decided they’re going to hire you and the interview is just a formality. Having someone who’s worked with you refer you to a company lets you skip some steps. Sometimes it’s only the HR screening. Sometimes you jump straight to an onsite interview.

Be Legitimately Interested

This should be obvious, but 2008 Jim needed to learn this. Don’t apply to a company unless you’re interested. Every interview process is going to ask you why you’re interested in [company]. You should know before you apply. If you have to practice it in the mirror, maybe you shouldn’t be applying.

Sometimes this will come up when they ask you how you heard about [company]. Once I was able to honestly reply that I read their engineering blog and fell in love. They rejected me.

Alternatively, it is very very hard to answer this question if the real answer is that [company] uses my favorite tech stach, pays above market, and the people are decent human beings.

Ask Questions that Start Conversations

One sided discussions are boring. Both you and the interviewer want to ask questions that start conversations.

2008 Jim didn’t have questions to ask companies. At my early jobs developers had no input on the tech stack or build and deployment pipeline. I was less engaged in interviews, and interviewers probably mistook it for disinterest.

My current favorite questions are about testing and build pipelines. Having automated builds and deployment is more and more common. It might be a very boring question in five years.

My ideal interview would be talking shop about interesting bugs and what crazy ways [company] is dysfunctional (Every company is in some way). Alas, here are the questions I actually ask. I try to split them up and not ask every interviewer the same question.

Questions for the recruiter

  • What is the role?
  • How many employees?
  • Type of funding? Bootstrapped? What series? (You should know if they’re public)

Questions for engineers

  • What languages/frameworks do you use? Why does it fit your use case?
  • Where do you store code?
  • How do you deploy?
  • How is work planned?
  • How do you monitor your app?
  • Who responds to downtime? Is there a run book? Pager duty?
  • If you could change one thing at [company] what would it be? (A polite way to ask “What do you hate?”)

Questions for Managers

  • How do you measure success? Six months to a year from now how do I know I’ve met my goals?
  • How does your team celebrate victories? (It’s bad if they never stop to appreciate what they’ve done)
  • What does the career path look like?
  • What does a bad sprint/project look like?

Questions for Everybody

  • What are you looking for in a coworker/employee?

Questions someone asked me that resulted in a good conversation but I would never ask

  • What’s your most controversial thought?