| I used interviewing.io's resources for my most recent job search; however: 1. Even once I studied enough to know how to use the more challenging algorithm techniques (dynamic programming, graphs, the more esoteric versions of sliding window, etc.) that still wasn't enough to pass interviews. The time I was given to solve the problems was so short that it would take me at least a month of practice to get fast enough at just one of the techniques. 2. It's difficult to predict what interviewers will ask. In a six month interviewing period I might only get asked a given advanced topic once. I eventually gave up on becoming sufficiently proficient in more than the basic algorithm techniques. I couldn't realistically prepare for each of the algorithm techniques on interviewing.io and I couldn't predict which I was likely to be asked. It was just luck. So I found that the best strategy was just apply to as many jobs as I could and hope that I didn't get asked one of the more advanced topics. In effect, if I'm reliant on luck either way, then I may as well rely on the approach that gives me more time to put in applications rather than studying. I guess my question is what the intended use of this sort of book is considering the world we find ourselves in? That is to say: In an ideal world where interviewers care about demonstrating competency, then taking your approach of learning to understand the basic patterns that make up these questions makes a lot of sense (and would probably make people better programmings). However, in our current world where interviewers demand raw speed, that doesn't seem viable. |
I hope Mike jumps in to answer your question about where the book fits in, in a world where speed matters more than it used to.