I’ve lost count of the number of times I’ve heard someone in the industry mention that they don’t actually use Algorithms in their daily job functions.
Why then, do most companies use it as a metric to assess potential employees. Aren’t they better off testing skills that are more relevant to the positions’ actual responsibilities? I took some time to think about it, and I’ve shared my thoughts below. I would love to hear what other Risers think about this issue as I’m sure pretty much everyone has an opinion about it.
Here’s the quick and dirty summary according to me: No, LeetCode questions are not the best way to assess a candidate, but until we come up with a better approach, right now LeetCode questions provide the best,
(candidate_quality)/(work_involved to assess candidate) ratio out there.
I’m gonna be honest, I like solving LeetCode questions. I like how they challenge me, help me learn and implement new concepts in actual problems. The joy of seeing myself improve over time alone is worth the effort for me. And it’s kind of a bummer that on average those aren’t the type of questions we’ll be facing in real work. That being said, there are definitely positions out there that require you to apply some of these concepts, but none warranting the amount of questions, concepts and approaches we end up learning.
In an ideal world I’d imagine interviewers taking the effort to create custom questions that are related to their daily functions, and those the candidate is likely to encounter when and if they join the organization. But in reality, if that were to happen, after the interview the interviewers who meticulously crafted these questions, would find their questions being posted on every interview forum under the sun. Should they make new questions for every interview? That’s not even close to being worth the effort given the number of candidates some companies have to interview.
I think that’s where LeetCode comes in. I feel it provides a very good estimate of a candidates potential to learn complex concepts. So now no matter what their daily functions entail, chances are they should be able to tackle them. To me it feels kinda similar to saying, “ A student who has completed high school calculus should find it easy to work with trigonometry concepts as well as teach them to others.”
So is LeetCode the best way to assess candidates? Not at all, it has little to do with the actual job responsibilities. But is it the best bet companies have to get good talent with relatively low effort? Absolutely.
Do you have any other ideas or have seen any interesting ways in which companies can assess candidates? Would love to hear your thoughts !