This is a rant about software engineering interviews and LeetCode.
šÆļø Preamble
In 2024, hundreds of thousands of people worldwide are grinding through LeetCode, aiming to break into the tech industry, drawn by the high salaries it offers.
š¤ What does LeetCode actually bring?
LeetCode offers little more than these benefits:
- Algorithm exercises and data structure knowledge
- Coding under pressure (Why though? Are we in a war zone now?)
- Passing coding interviews
However, completing LeetCode doesn’t prove you’re a good software engineer. It only shows you can code basic algorithms and solve programming puzzles. It doesn’t test essential skills like collaboration, communication, documentation, design patterns, system architecture, low-level programming, or core computer science knowledge.
If LeetCode only tests these basic skills, what are employers hiring for? An entry-level programmer? It’s like hiring a doctor but only testing their basic chemistry knowledgeāsomething they rarely use in real-world situations.
āļø What’s the real issue?
LeetCode practice isn’t about learning. You donāt gain insights into computer science or system design;instead, you learn how to pass coding interviews. If the problem isnāt obvious, hereās another way to look at it: itās like being in school where learning isn’t the pointāpassing the test and getting good grades is. This mentality might explain why some people, despite being labeled as “educated,” still act or think poorly. Now, we’re doing the same thing with tech interviews.
LeetCode is not Software Engineering. š
š” What are better solutions?
There are so many more productive things to do. Contribute to Nix/NixOS, improve Emacsā ecosystem, enhance Java package management, work on C and CMake workflows, better the Godot Asset Store, or practice writing parsers and language servers. So much remains imperfect, yet people waste time on LeetCode. š¢
Itās better to study other people’s code, talk to them, and learn how they solve real-world programming problems.
The industry is suffering because weāve taken the lazy routeāusing software to filter candidates without assessing real talent. š
š¤ I’m not alone
A quick Google search reveals countless rants:
š¬ Conclusion
We can’t escape this trend. History has shown that, for now, this is the path society follows. Maybe software engineering just isn’t for me at this moment… š§