Gone are the days when scientists had to calculate mathematical equations manually. With calculators, they were able to perform complex calculations with ease, freeing up their time to focus on more important tasks.
Similarly, the software development industry is undergoing a transformation, with the death of Leetcode and the rise of generative AI-powered development.
Why Leetcode is no more
Companies tried to “standardize” and “objectify” the hiring process by using test tasks which involved abstract problems with the varying levels of difficulty, called “Leetcode.”
The problem is, the developers who excel at Leetcode might not necessarily be the best fit for a particular role. Computer Science-based challenges in most of the cases don’t reflect the specific skills or technologies required for the job. It’s like hiring a truck driver based on their ability to come up with a formula for a chemical compound of his truck’s tires.
Also, Leetcode answers for FAANG companies are readily available on the Internet.
I’d argue it was a terrible idea from the beginning.
What instead?
ChatGPT is capable of writing binary tree sort in all programming languages, including very obscure ones, and can also explain it clearly. ChatGPT can answer all interview questions, it can create design diagrams, and test cases.
With this tool, what do we distill the best software engineer to? What is left which is the essence of a developer?
There are only three things:
- Internal Motivation. What drives them? What makes them keep going when things get tough? Do they know how to maintain a balance between consistent stellar performance and burning out? Are they interested in the industry, in the product, in the skills they can learn?
- Soft Skills. Can they work in a team? Can they explain their ideas clearly to anyone, including ChatGPT? Can they inspire and uplift other human beings who work with them? Can they evangelize, and sell their creative ideas?
- Zoom In — Zoom Out. Can they operate at different levels of the problem — from user research to architecture to design to implementation to observability to scaling? Can they do all that, and then get back to the origins, and do this exercise again, and again?
I’d argue that the third skill — being able to zoom in and zoom out — is the most vital. The reason being that engineers will utilize AI-powered tools at every abstraction level, so they must bridge them to produce a cohesive deliverable.
Conclusion
Leetcode is finally dead, and it’s time to change the way we hire developers. The skills that once made a great developer, such as writing code from scratch and answering software design questions, are no longer the best indicators of success.
Instead, we should be looking for developers with a passion for their work, a strong understanding of their industry and the products they are building, and the ability to bridge multiple mental levels while driving their generative AI copilots.