3 ms·
There's a difference between asking an interviewee to implement an obscure data structure and knowing your basic algorithms and knowing how much complexity is a
by mech4bg 13y ago
There's a difference between asking an interviewee to implement an obscure data structure and knowing your basic algorithms and knowing how much complexity is added by using certain data structures. i.e. I'd expect any coder to understand what the performance trade offs are between a hash table and a binary search tree, and why you'd use one over the other. This stuff matters in day to day backend code whenever you're dealing with a non-trivial dataset.
However writing off in-depth knowledge of algorithms as esoteric or a waste of time is disingenuous in my opinion. I've seen lots of coders write over-engineered, far too complex code, but they were usually not great at algorithms.
Studying up for a Google interview was a transforming experience for me as a programmer - I realized how much I was missing and how little I'd let myself forget the basics since college. It made me a much better coder and made it much easier for me to learn new languages and systems. Understanding CS fundamentals gives you a great platform to work off, and understanding the complex issues makes you a better coder for the day to day stuff.