Derailing Tech Interviews For The Better

One of the most feared activities on this planet is the tech interview. Not so much the first, get to know you interview but, the third interview. The one where the interviewer asks a question about recursion... or ML. No, I am not currently looking for a new job, I have just had the pleasure of derailing a technical interview recently. In addition, this topic always seams to be top of mind. Plus a constant topic talked about in any software engineering circle.

The hard part of it all is pinpointing what makes these interviews so terrifying. Perhaps it is the need to sit there and let the interviewer barate the interviewee with questions that they feel are relavant. We all know these, they may include Towers of Hanoi, cycle detection, something about man hole covers, and my all time favorite: some overweight campers need to get over a rope bridge in 17 minutes. The answer to the above is 12. The campers, in their packing extravaganze happen to have brought a rope. This allows them to pull the required flashlight back across the bridge without having to walk it back.

And... why do these suck? It's simple: we don't use Haskell or ML in the real world (not many of us). We also, as web programmers(apparently not even kernel programmers) rarely use recursion. And if we did, Babel or some other transpiler would deconstruct it for us(t's faster that way). Yet, it is a constant that we will be inundated with these questions during the interview process.

Frankly the above blow but, here are a few that can turn the tide of any interview.

  1. Research the companies open source work. Look for good documentation, well written commit messages and inquire about documentation. Doubly so where it is lacking (no documentation is complete). In some ways, these developer soft skills are more inportant than recursion.
  2. Inquire about how they communicate. Do they use asynchronous tools that add to documentation or do they prefer to do things through video chat? If the latter is true then how or when do they document their face to face time? Have they upgraded their Slack account so history is completely searchable?
  3. Are they partially remote ("remote by design") or remote first? If the position is remote or augmented the answers here are key. It shows how they value remote employees and if they know how to work remotely themselves.

These questions are aimed at getting the interviewer away from tooting about their ML knowledge. They require a good bit of company research by the interviewee but, this should be a given. Knowing the people who are grilling you on the other end of Skype is the first step in winning. And winning is the only outcome that makes sense when being subjugated by someone else's ML knowledge.