I think the problem with this site is that it acknowledges that interview questions are something you can study for specifically.
Interview questions as a whole apparently have nothing to do with ability to really code. That's just sad isn't it? Riddles are no fun if they have to be solved under pressure.
">>> Riddles are no fun if they have to be solved under pressure."
I agree. I've said this before, I never produce anything good during under pressure. They make it seem like programming is "cram solutions, answer quickly and forget", just like the educational system these days.
Its another reason why I'm not applying to software developer jobs that insist on these pressure cooker questions. I'll stick to programming as a hobby and let my projects speak for themselves.
Aside from my rather opinionated rant, I think its a cool idea and congrats to the developer, I guess it will be useful for people who need to go through these code interviews.
How is that a problem with the site? It's a problem with how most tech companies conduct interviews.
Yes, it's sad, and at least these days people are aware of how useless these questions are for most positions. But if you're planning on applying for jobs, it helps to be good at them, and this site looks great for that.
no not at all, these are examples of some of the things you're expected to know as a competent engineer. being able to solve a puzzle is one thing, being able to solve it at the optimal efficiency is a feature of the best engineers - don't you think the people that can arrive at these solutions would be better products? It depends on your job, but I work on big clusters on machine learning systems and the difference between an optimal algorithm and one that's just ok is huge.
> these are examples of some of the things you're expected to know as a competent engineer
I find this statement tenuous at best when the example question has absolutely no programming component of any kind and is entirely a little math puzzler about determining the highest floor from which one can safely drop an egg.
It's certainly an interesting problem, and the explanation is presented incredibly well, so I don't fault the site itself. I'm also aware that this is something of a pop culture question for "programming" interviews. However, I don't believe that it is in any sense true that it is necessary to excel at this sort of question in order to be a competent programmer.
This might seem representative of the experience of trying to design a novel algorithm to solve a new problem, but in fact it couldn't be less representative. I've had to write some hairy code in my job a few times, and not once was I under time pressure or expected to have the critical insight within five minutes. Any problem that has any sort of creative or exploratory or "research" aspect to it should not be under time pressure, and ideally it should be mixed in with other work so that you can rest from the problem and come back to it later. The vast majority of candidates who will pass this particular test all the way to the end are ones who just memorized it online.
wow, unless you got a different question that I did I am amazed at your response. The algorithm is used often in CS, that you didn't know this kind of makes my point. Sure you can probably work as a programmer for years and not care about writing well optimized code, processors are so damn fast these days you can ignore the code quality and get away with it.
Also if you couldn't reason your way to the answer how would I have any confidence you could reason any other problem of similar difficulty level. This kind of problem shouldn't you more than 5 or 10 minutes to figure out.
That's quite a loaded and passive-aggressive non-response. It does not befit this forum and certainly does not display the maturity I'd require from anybody reviewing my resume. It's so filled with assumptions I don't even know where to begin. Truly, I do not know how you deduced from my post that I don't care about writing well-optimized code. You clearly didn't understand what I wrote.
Really? When you have problems, they're unoriginal problems that have Google-able answers, defined and to be solved in a vacuum devoid of context, and you're expected to either know the answer already, or figure out the optimal answer in 20 minutes, and code it correctly on a whiteboard while people watch you? That sounds like hell.
In some environments (like yours) it may make sense.
In the vast majority of the cases however, you can get away with writing un-optimized code and it generally makes no difference. Considering the egg problem, any computer would not care two shits about running through all 100 floors to drop the egg every single time.
Unless this particular piece of code is a bottleneck for your organisation, there is very little reason to check for/think of an optimal solution to this problem (if you don't know it yet).
That does not make you a bad programmer, just an economical one.
Interview questions as a whole apparently have nothing to do with ability to really code. That's just sad isn't it? Riddles are no fun if they have to be solved under pressure.