Tech whiteboard interviews are hard on purpose.
Feb 13, 2021
49 Comments
I have a feeling that tech interviews are designed the way they are, so as to prevent constant job hopping.
I've many many times had recruiters from Google, Facebook etc contact me, and I've largely ignored them. Not because I don't want to someday work at Google or Facebook....but because I don't want to spend 2 months studying like I'm back in fucking college. My experience and skills don't seem to matter: what matters is rather I can solve the stocks optimization problem using dynamic programming.
I can understand this difficulty for people who have no relevant experience. But for someone with 7 YOE, why do I need to feel like I'm taking a final exam? Why does my actual experience not matter at all?
comments
It doesn't surprise me that some senior level people have gotten rusty in their coding skills.
> "because I don't want to spend 2 months studying like I'm back in fucking college"
LeetCode questions filter out people with the above attitude. No offense intended, but this comment suggests you find dynamic programming difficult and you refuse to take time to understand it. You know they'll test you on it, and you refuse to prepare for it.
There's no shortage of talent applying to Google or Facebook, so they can turn down an amazing candidate rather than risk hiring a bad one. Refusing to learn something you're asked to prepare for the interview is not a good flag.
Ideally, Google/Facebook should find managers from teams you'll likely join and have them interview you and ask relevant domain questions. But these companies have too many applicants and can't give everyone special treatment. And other times, maybe your best-fit teams aren't hiring. So as a hacky quick-fix, they stick you with a LeetCode question.
> "I have a feeling that tech interviews are designed the way they are, so as to prevent constant job hopping."
I see them partially as a filter for people who won't do certain work they dislike... which is reasonable. If you won't prepare well for an exam-like interview that you hate, then maybe you can't lead a project that you hate but has to get done. That's not a quality you want in your senior engineer or team lead.
Finally, dynamic programming is not rocket science and you don't need a PhD for it... it all makes sense once you approach it from the correct perspective, and it doesn't take 2 months. Once you truly understand it, you don't forget after 7 years and have to review - just like you don't forget riding a bike. Universities usually teach it wrong and most people never learned to ride the dynamic programming bike in the first place.
I wonder how you think k8s cluster management is implemented. An engineer designed a solution for that problem and wrote the code for that. So, when you land on a company at the scale of your current company, fb, google, etc., you may need to understand the implementation of that system or even need to implement one or similar from scratch. Thatβs only possible if you have right level of problem solving skills through coding.