5 ms·
Ask HN: Does grinding Leetcode have the highest ROI?
A bit of context: I work remotely for a company with offices in Europe. I get paid pretty well, actually super well compared to my local market average salaries.
Due to my current family circumstances, it's not an option for me to relocate.
I have been in backend engineering for about 5 years now but I'm starting to feel that the atmosphere in my current team is deteriorating every day.
Even though it's highly likely, there might not be an open position in another team within the same company.
Here's the question: what is the most pragmatic way to be in good shape should I leave the current job?
I constantly try to improve in pure backend-related aspects like my default programming language, databases, system design.
That said, it seems that a lot of companies where my income could increase in a statistically significant way, Leetcode style interviews have become very common.
I am making the conclusion that being good enough at Leetcode problems is a pretty safe bet.
What do you think?
- PartiallyTyped 3y agoStudying system design and doing interviews consistently even if you don’t intend on leaving is likely the best way to stay interview ready.
- markus_zhang 3y agoThe thing is time is a limited and precious commodity so sometimes we question whether it's worthwhile to "subscribe" to something for 1/2 hours every day.
- dondraper36 3y agoTo be honest, I pretty much enjoy problem solving so I don't really mind spending some time on LC. It's true, however, that this preparation is mostly useless once you have landed the job. That is unfortunately but, as they say, you have to learn the rules and play well.
- dondraper36 3y agoSystem design interview, based on my observations, are often paired with a preceding Leetcode round (or several). I spend time studying system design with Designing Data-Intensive Applications and resources like System Design Primer, but you have to be good at Leetcode before you can even get to that stage.
- PartiallyTyped 3y agoWhat does “good” mean? You can get a high mileage out of learning how DP and greedy algorithms work and having wide array (hah) of data structures.
- dondraper36 3y agoMy definition of "good" in this context is being able to solve a Leetcoed medium in 25-30 minutes on average.
- PartiallyTyped 3y agoI expected 10-15 minutes for mediums. I was at that point a year ago when I was prepping for AWS and I am not some genius or anything special. It’s probably even easier to just write anki cards with the solutions and memoize them (pun intended).
- nsxwolf 3y agoThat's frankly never going to be possible for someone like me. 10-15 minutes just sounds crazy. I'm lucky if I'm able to understand any problem well enough to get a brute force solution in under an hour. The O(n) or O(log n) they actually want, that's just going to be pure luck that I recognize one of the patterns that will let you apply that. The time constraints just make this whole thing exacerbating.
- jstx1 3y agoMy problem with the "just grind leetcode" advice is that I'm not getting interviews in the first place. But if you're able to get interviews, yes.
- dondraper36 3y agoI am not even applying now. The salary ranges I often see outside of FAANG or from local companies are lower than what I have now. The ideal option would be to find another team given that I'm fairly satisfied with the compensation level. Life happens, however, so I decided it's never wrong to be ready for a sudden interview. Even though I am not ready to relocate now, there might be a non-FAANG company with a great remote-friendly offer.
- speedgoose 3y agoI guess training on the classic book "Cracking the Coding Interview" and similar will help you pay the bills easily. Personally I would also work on my portfolio.
- dondraper36 3y agoThat book, unfortunately, is too "basic" these days. There is plenty of conflicting information regarding that but Google is said to have the most complicated coding problems, including dynamic programming. The really stupid thing about a lot of such problems is that implicitly they require pattern recognition and probably even memorization. For example, solving the problem of finding a duplicate number in an array/list with O(n) time and O(1) space complexity is pretty hard, in my opinion. Even knowing the required data structures doesn't help a lot unless you know the trick with fast and slow pointers. To be fair, this particular pattern is well-known and should be in your algorithmic toolbox if you're aiming for FAANG, but the whole situation is a bit strange.
- speedgoose 3y agoThat’s the first time I hear about this algorithm. It seems to be pretty useless knowledge given the constraints. I guess it’s a good indicator about how motivated the candidate is to work in the company. I was told that it’s more cool if Google wants to hire you compared to applying to Google.
- idoh 3y agoAs someone non-technical grinding interview prep has been a game changer for me. So I would say yes, probably. Figure out what questions could be asked, then practice via study, mock interviews, and Anki. There’s only so many questions they can ask, and if you practice them all and are fluid then you will be in great shape.
- asdfzalsd 3y agoyeah it does, you can double/triple your currently salary just grinding leetcode for a few months this thread got a lot of traction how to properly leetcode grind: https://twitter.com/pwang_szn/status/1674719490993688577 https://twitter.com/pwang_szn/status/1674719490993688577