There seem to be two camps of people in the software engineering world: those who live and die by LeetCode and those that write it off as a kind of a parlor trick or an exercise in memorization.
“I’ll never use this in real life!” they protest! Meanwhile, every FAANG company and many others, will test you on problems that are similar to LeetCode or ripped directly from their site (I’m looking at you Facebook).
I approach LeetCode like exercising: 30mins — 1hr a day will keep you in good shape, while 4 hours or more is really only helpful if you plan on being a body builder or in this case, a competitive LeetCoder.
I’d argue that solving problems on LeetCode isn’t just beneficial when you’re on the job hunt but can ultimately help you solve the kinds of problems that you will encounter on a daily basis, especially as a front end developer.
While most of the LeetCode hard problems involve dynamic programming or recursion, a lot of the easy/medium problems resemble the sort of issues you are likely to see when you’re traversing objects, looking for unique elements in an array or any data munging scenario that has to be done on the client or server side.
I also think there is a lot of value for self-taught or bootcamp-taught developers to dive into technical problems that require some computer science algorithms and data structures that are usually missing from Udemy courses or YouTube videos we‘ve used to learn in lieu of traditional education.
Interviews that rely solely on how well/fast a candidate can solve problems like finding the right most element in a binary tree might not be the best measure of aptitude for a front-end position using React. You may have just hired the best damn LeetCoder when what you really wanted was someone who understands things like webpack, web performance and creating re-usable components. Oops.
Refusing to play the LeetCode game will limit your job prospects, drastically so if you want to go the FAANG route. So, whatever your feelings are about the state of interviews and the (over) reliance on algorithm questions to weed candidates out, it’s in your best interest to at least be familiar with some of the most common challenges out there. If LeetCode still intimidates you, I’d suggest trying the 30 day challenges they’ve begun to offer: https://leetcode.com/explore/other/card/30-day-leetcoding-challenge