As an engineer and an early stage investor I find the technical interview process fascinating, especially at startups. I see a lot of startups copying the interview process of large organizations which makes little sense because I believe startups are inherently looking for different engineers than Google. Normally startups are searching for engineers with a strong product sense who understand business and above all — deliver. Startups want engineers who execute at a high level, are hungry, and passionate about the problem space. To hire quality entrepreneurial engineers for your startup, I suggest dropping the standard interview process and giving these 3 tactics a shot.
1. Have an engineer find your engineer
Engineers know engineers. In order to properly convey a technical job description, it must be explained by someone who can talk the technical talk and have a conversation around the technology stack. If you don’t have any engineers on your team, ask an engineering friend to help you source and interview candidates. At a absolute minimum have an engineer post in one of the popular of engineering Facebook groups about your startup. Yes, these groups exist.
2. Stop asking classic technical interview questions
Classic technical interview questions test for memorization, not problem solving ability. I understand companies ask technical questions to see how a candidate thinks but unfortunately it isn’t that simple anymore. In the last decade the adoption of training books such as Cracking the Coding Interview have skyrocketed and become part of the standard interview preparation process. These books outline solutions for hundreds of technical questions and candidates spend hours memorizing the answers in order to regurgitate the correct solution when asked. This is the sad reality of the dynamic today so truly the best option is to stop asking the classic questions in the books. If you want to test someone’s problem solving ability, ask a unique question. Problem solving doesn’t have to overlap with technical ability and every job requires that skill so get creative in how you test for it! I promise you that asking a candidate to write the Fibonacci sequence iteratively and recursively is an extremely unreliable way to see how a candidate thinks.
3. Ask for a coding sample
Coding samples are underutilized period. They are rarely used for and often quickly scanned. I recommend focusing on coding samples because they show a whole lot about a candidate. Is their code organized? Do they comment code well? Do they use packages effectively? Is their code modular and reusable?
Code samples shed light on what an engineer will produce in a realistic situation. This information is much more valuable then what they can produce in a 45-minute technical interview. For startups in particular, speed is key so seeing what someone can produce tomorrow in the codebase is crucial.
When looking for an engineer, first figure out who you are actually looking for and interview for that. If you are looking for a well rounded ninja — don’t ask useless technical questions that test for skills they will never use on the job. Be practical and test for the skills that will move the needle in your company on day 1.
If you liked this article please like it below to let other find it.
Follow me on twitter @caseykcaruso