4 ms·
> Exactly my point. Rarely is there one "correct" implementation. For any given problem asked in such interviews there is certainly one correct implementation
by fictioncircle 9y ago
> Exactly my point. Rarely is there one "correct" implementation.
For any given problem asked in such interviews there is certainly one correct implementation and if you believe otherwise you are not providing sufficient information to answer such a question.
> Understanding the choice you make and can support is the point of coding interviews. That's why they're so often done in pseudocode and/or on the whiteboard.
> If you can look stuff up you're not demonstrating a knowledge of the fundamentals. If you don't understand complexity and optimization, you will make mistakes even if you can look stuff up later.
> That's why these companies do these.
Honestly? This is part of the rant I was trying to avoid.
1) I've met developers that claim SHA-1 is a secure choice in 2017 and make other facepalm worthy claims that 5 minutes of research would have told them was a bad idea.
2) We've fired quite a few people who believe as you do precisely because they are so convinced they understand the fundamentals they don't look things up and make costly mistakes.
3) I've met accountants who can't correctly handle a 4-4-5 calendar that is integral to their jobs without looking things up. Similarly, I've met ones like you that genuinely believe they've memorized the "fundamentals" and repeatedly failed waste thousands of dollars.
4) I honestly believe anyone who refuses to look things up to double check is fundamentally incompetent. We all make mistakes and the only way to appropriately minimize them is to double check (i.e look things up) before hand and have someone else review it afterward.
5) I genuinely do not want to work with anyone who does not do #4. Ever. The sheer number of times they've attempted to shift blame onto other people before they were fired is simply not worth the hassle.
- nkozyra 9y ago2) and 4) and 5) are strawmen. It is -in fact- possible to understand the fundamentals and look things up. As to your assertion that there is one "true algorithm," the merits of that stand for itself, but regardless being able to explain WHY is what an interviewer should look for. "Go Google and implement some algorithm" does not provide a useful metric other than "can use a computer." All of this also ignores a more pressing issue: that looking something up often means getting bad results. Can the applicant draw on knowledge of complexity to distill their Google search? Without that types of test your answer is "hopefully." That's why Google, FB, etc start with whiteboard tests. Anyone can search and implement.
- fictioncircle 9y ago> Can the applicant draw on knowledge of complexity to distill their Google search? Without that types of test your answer is "hopefully." It isn't difficult to structure a complex question that requires research and have the answer you claim is impossible to find. > That's why Google, FB, etc start with whiteboard tests. Anyone can search and implement. I'm sure that is what you believe but that doesn't make it true. > 2) and 4) and 5) are strawmen. It is -in fact- possible to understand the fundamentals and look things up. I've never met an engineer (or any professional implementing complex processes) who simultaneously grasped the fundamentals of all areas where they needed to possess competence from memory. (Yes, that includes myself in case you are wondering.)
- nkozyra 9y ago> It isn't difficult to structure a complex question that requires research and have the answer you claim is impossible to find. An answer? Sure. THE answer? No. Too much subjective reasoning in that; something that performs well with clock time may be far worse in some other metric. It always depends. You need to be able to explain it, and that's what complexity is about. Fundamental comprehension of the tradeoffs of approaches. > I'm sure that is what you believe but that doesn't make it true. Great. Same with you. Unfortunately, those companies agree with me and do fairly well filtering candidates. > I've never met an engineer (or any professional implementing complex processes) who simultaneously grasped the fundamentals of all areas where they needed to possess competence from memory. Me neither. But then again that's not what we're talking about.