5 ms·
> But they're offering this course, and that makes me think that no, the worst student from these schools in the US, at least cannot nail any algorithm intervie
by yodsanklai 5y ago
> But they're offering this course, and that makes me think that no, the worst student from these schools in the US, at least cannot nail any algorithm interview with minimal prep!
I think it's impossible to nail these interviews without minimal prep. It's very specific, and every candidates are well-prepared, many of them have done 500+ leetcode questions before interviewing.
Regarding the US universities, I'm not sure but I wonder if some students can somehow compensate a lack of academic mathematics excellence with extracurricular activities, or being rich or from a minority. Maybe companies want to filter those out?
As for creativity, leetcode interview questions is all about preparation. There's little creativity.
- saagarjha 5y ago> I think it's impossible to nail these interviews without minimal prep. It's very specific, and every candidates are well-prepared, many of them have done 500+ leetcode questions before interviewing. It’s definitely possible. Mostly you’d want to learn your algorithms well in college and continue to exercise them in your work. The rest of the interview is a lot about how you present yourself, which is mostly along the lines of “work out the problems out loud and ask questions”. Also, FWIW, I’ve had a decent amount of opportunities for creativity on Leetcode-style questions. When permitted I often pick the language that I feel would make the solution simpler or easier to understand. When doing things like linked list or graph traversal you’re often asked to define the datastructure you’ll be using, which is a good chance to use different types of polymorphism or algebraic datatypes that can make your task easier. Even if you’re just churning out for loops, a lot of them can be replaced with functional methods or selective application of interesting utilities such as array rotation.
- yodsanklai 5y ago> Mostly you’d want to learn your algorithms well in college and continue to exercise them in your work. The rest of the interview is a lot about how you present yourself, which is mostly along the lines of “work out the problems out loud and ask questions”. Not my experience. When I interviewed at Google for a senior position, I mostly had difficult questions with little interaction with the interviewer. Before my preparation, I could solve all the questions within let say a couple of hours and I knew very well all the algorithms. But that's not what's expected to pass. You're competing with people who have been working very hard on this style of interviews and you need to be among the best. You're expected to find the answer to a couple of questions within a 40 min. That includes finding the solution, writing the code (not pseudo-code), testing your solution and discuss complexity. Thinking 15min + sketching some pseudo code is not enough, or maybe for a particularly hard problem.
- saagarjha 5y agoI can understand not being used to writing pure algorithms for an interview, so I guess that is something you can certainly spend a bit of time working on improving. But I’m a bit curious about being able to solve a question in “a couple of hours”. In my experience most of the interview questions I’ve seen are of the “I know how to do this and I can implement it, maybe needing a little bit at the end for some edge cases” or “I have no idea how to do this, I’m just going to brute force to have something and then spin my wheels for the remainder of the time”. I can see the time being useful for competitive programming, where you often need to put things together in nontrivial ways, but I find that most interview questions are fairly straightforward once you know what the algorithm or data structure is. Unless you’re rederiving it in the fly, which I have done sometimes, but it’s still not something that I would spend a couple hours on.