A few days ago one of the candidates wasn't able to tell us the difference between stack and queue.
You're asking questions that could be googled in five minutes, and I'm more into practice, let me do a test task
My answer was really polite and really strict: there are some things you should know off the top of your head.
If you don't want to be humiliated on tech interviews, there are two ways.
First and easy-peasy: switch back to the occupation you've come from into development.
Second and hard: DO SOME COMPUTER SCIENCE. Stop asking questions on StackOverflow and forums, stop reading medium, stop writing applications (you probably doing that wrong anyway). Just do THE FREACKING COMPUTER SCIENCE.
Here is good guy Robert Sedgewick (see cover). He will guide you through forests of algorithms and fields of data structures. Did you ever play Dark Souls? This is worse. But if you have ever finished it - you should remember THAT feeling.
Or you can just drop it back to normal life without pain and software development. Up to you.
Top comments (3)
I would submit that your remedy is not in agreement with your assertion.
Assertion: "there are some things you should know off the top of your head."
Remedy: "Did you ever play Dark Souls? This is worse. But if you have ever finished it - you should remember THAT feeling."
The applicant was correct that "to know that off the top of your head" is basically useless, it takes seconds not five minutes even. What you actually are looking for is someone who has internalized how the structure works by having done the work. If they have done that it actually doesn't matter if they recall which goes by which name--they could apply it just as well without looking that up.
Precision matters.
You may assume, that we asked to reverse a binary tree on a whiteboard. Actually, the question about stack and queue was the only one from data structures area. So, I want to ask you: is this ok for a developer to google what stack is?
"is this ok for a developer to google what stack is?"
You are still missing it. What you have asserted you actually want is someone who groks both a stack and a queue--it doesn't matter if they forget which is which. Are you looking for someone who has memorized the definition of stack and queue? Or are you wanting someone who has internalized the difference?
I'm not contesting your assertion that it is knowledge you are looking for in an interview, the problem is your assertion that "there are some things you need to know off the top of your head". Knowing things off the top of your head vs having actually internalized what they are and how they work is the difference between watching someone play Dark Souls and having actually done it themselves. You are conflating vocabulary with understanding.