Are you struggling with hiring good programmers? This guide will help you to reliably understand if a candidate is a competent programmer, inspired by Casey Muratori’s interview.

With this approach, he claims he can always understand if someone is a competent programmer, and he has never seen it fail.

His opinion is that the second question is much harder to answer, and he doesn’t know how to reliably do it, and whether there is a way to answer it.

For the first question, he says that with the process he is following, he can always understand when someone is a good programmer.

If they can answer your questions, and their answers come from solid foundations, it means that they know what they are doing. If they can’t, then they are not what you are looking for.

In his opinion, one of the benefits of this approach, compared to LeetCode style interviews, is that people are responding to the questions from a place of comfort, which is similar to how they actually work.

To play devil’s advocate: difficult coding questions are a way to minimize false positives, with the side effect of having a large number of false negatives. Being able to prepare and apply learned techniques is a kind of problem solving. The ability of problem solving is the most important skill a programmer should have.

Another benefit of LeetCode style interviews is that they are somehow standardized. Standardized processes help large organizations stay consistent.

In our opinion, interviews of this style are not the only way to eliminate false positives. The same result can be achieved with Casey’s approach too. After all, how could a candidate fake the reasons behind their project decisions, or struggle to explain how they would improve something they have spent a lot of time building?

While we prefer this approach from LeetCode style interviews, we think something is missing: A way to understand how adaptable the candidate is to a new codebase.

A different set of skills is needed for jumping into a huge codebase and making contributions, from being able to explain why and how you did something you had spent a lot of time working on.

Our proposed solution to this is to have a pair programming session with the candidate, where they have to fix a bug in an unknown codebase. During this session you can understand:

At Linear, they were struggling to find the right people for their fast-paced environment following the standard interview process.

For that reason, they decided to do paid work trials, which typically last from 2 to 5 days depending on the seniority of the role. They mention that this approach is working very well for them, and they have achieved, at the time of writing, 96% retention. Everyone has to do them, from engineering to C-level candidates. During the trial the candidates work on a real project.

We also believe that this could be the best way to find the perfect fit, pairing on actual tasks should be the best indicator. Unfortunately, not everyone has the bandwidth or culture to support this.

In our opinion, Casey’s approach to coding interviews is an improvement to the current standard. However, it can be extended to have more certainty that a candidate is a good fit.

Finally, after you have made the right hire, you can use Hopp, our own OSS pair programming app, to have an even better onboarding experience. During the pairing sessions, you can guide the new hires by smoothly taking control of their computer when needed and saving them time from learning obscure commands and processes.

PS: Only Grammarly has been used on this post, I decided that I am not going to use AI when putting my views online.

Casey doesn’t like LeetCode style of interviews, instead, he follows a drill-down approach where he

According to Casey, two questions need to be answered in an interview

The process he follows can be summarized in the following steps:

Another quite novel approach to tech hiring we should mention, is Linear’s work trials.

We would love to hear your approach to coding interviews and whether you disagree with our views.

Feel free to reach out at X/twitter or email me directly at iason at gethopp dot app.

This is the xdefiance Online Web Shop.

A True Shop for You and Your Higher, Enlightnened Self…

Welcome to the xdefiance website, which is my cozy corner of the internet that is dedicated to all things homemade and found delightful to share with many others online and offline.

You can book with Jeffrey, who is the Founder of the xdefiance store, by following this link found here.

Visit the paid digital downloads products page to see what is all available for immediate purchase & download to your computer or cellphone by clicking this link here.

Find out more by reading the FAQ Page for any questions that you may have surrounding the website and online sop and get answers to common questions. Read the Returns & Exchanges Policy if you need to make a return on a recent order. You can check out the updated Privacy Policy for xdefiance.com here,

If you have any unanswered questions, please do not hesitate to contact a staff member during office business hours:

Monday-Friday 9am-5pm, Saturday 10am-5pm, Sun. Closed

You can reach someone from xdefiance.online directly at 1(419)-318-9089 via phone or text.

If you have a question, send an email to contact@xdefiance.com for a reply & response that will be given usually within 72 hours of receiving your message.

Browse the shop selection of products now!

Reaching Outwards