This is part two of our five part series on starting your job hunt. Starting with The Resume, we are going to show you how to start your search process, and how to navigate each additional step along the way. Follow along each week to learn the nuances of working with your recruiter, negotiating your salary, giving notice, and everything that comes between.
How to Prep for a Technical Interview
We’ve called you, you’re excited, you fantasize about impressing the VP of engineering with your architectural breadth and novel solutions, and then it hits you, you haven’t interviewed in years. What will they ask, why will they ask it, how do you even talk about yourself? You can feel the anxiety starting to build, and suddenly you want to cancel everything. You’re not ready. You can’t possibly prepare in time. Maybe in a week, or a couple of months, next year?
Breathe. You’re already pretty qualified. After all, they want to speak to you! This isn’t you walking around campus with a half-folded resume begging for an internship; you’re a professional now. You know what you’re doing, all you need is a refresher on some topics and an understanding of why this kind of technical interview came into being.
Why All the Algos?
Here’s the funny thing about interviewing for any job: most interviews aren’t designed to emulate the workday. They’re designed to get approximate insight into things like, intelligence, collaboration, reasoning, and personality. That is, interviews are dates. And like dates you’re trying to gather as much data as you can as fast as you can, which means noise, hidden biases, and mistakes will happen. One company tried to change that, and soon every tech interview, became a post-grad overview on CS fundamentals.
The reason google went to their now famed tech interview style and why that style spread to become the standard came down to the two poles of tech: Scale and Money.
Here’s a detailed breakdown of google’s company history (and a book for completists), but essentially Google was coming to being in the crucible of the late 90’s tech wave and they were about to build something at an unprecedented scale. This meant they needed great people, who were often expensive, and cash is always a little short when you’re a start-up. So, in the most data-centric way, they realized the single greatest barometer of whether someone could help them see into the future, and build what they need at the scale needed, were CS fundamentals. Why? Because those matter when your re-making the shape of all the world’s data.
Of course, like most successes, their way, became THE WAY. And so we live in the world of the CS fundamentals tech interviews.
The benefit? People who pass them can certainly code and likely at scale. The drawback? The same person’s performance varies ---a lot.
So how do you mitigate that? Studying.
Another Kind of Cross-Fit
Now considered a main-line form of exercise, cross-fit came about because people wanted the most complete prepare-me-for-the-Zombie-Apocalypse workout they could get. As a result, the entire set-up, ethos, and core workout principle boils down to the same thing: I want to be able to do anything.
Kind of like a masterful sort array?
CS fundamentals tests focus on scale for the same reason. Every set of questions is designed to test your ability to build the most bullet-proof, real-time, intuitive, and scalable application possible. Memorize this from the very beginning when you study up. Always ask: how does this effect solutions on the largest possible scale?
So where do I start?
Now that you know why tech interviews work the way they do, your best recourse is to study up on those fundamentals using a variety of online resources. In our experience the links we've included below seem to be the most helpful to candidates. Explore them and start sharpening your interviewing skill.
A great primer on interviews of any kind and all levels. A great place to start your prep.
A full walk-through of excercises that build on each other.
Another Great primer, including a list of ebooks and excercises to visit, it’s catered around the google interview, but that’s the standard.
A French company that lets you brush up on rusty coding concepts via gamification. Very Fun.
Odds are you will get a hackerrank test, practice and get familiar with the UI and types of challenges.
Now that you've studied up comes the last and most important part of interview prep.
Know About the Company
To go back to the date metaphor, everyone likes to feel like you've put in some extra effort. In the world of interviews, this translates to looking up what the company does, who it's clients are, what's funding may be, and what the world is saying about it. This matters because it gives you the context for all the fundamentals you've spent your time preparing for. And as we said above, context matters. Thankfully, this part of interview prepartion shouldn't take you more than 15 minutes on a search engine and the company's website.
Once you take these steps, you'll go into your interviews with the confidence that you're trying jobs out, as opposed to auditioning for them.