2/16 I always ask this simple computer science question: What is the
running time of an insertion sort? 50% of the time, the candidates
can't even answer that question correctly, yet they are making
50-60K/year. What is wrong with this industry?
\_ Maybe you're the one with the wrong answer.
\_ Labour shortage. I used to be proud of how much I was making
until I realized a lot of idiots make even more.
\_ What IS the running time of an insertion sort?
\_ O(n^2)
\_ Wrong answer. Right answer: "Under what performance model?" -nick
\_ Average case?
\_ That's just the issue of which asymptote to use,
not which performance model to use. -nick
\_ Enlighten us--what do you mean by "performance model"?
\_ RAM, PRAM, PMH, LOGP, BSP. When is merge sort
likely to be faster than quicksort? It depends
on which model you use. RAM says quicksort, PMH
says merge sort on machines with caches. (independent
of the partially sorted issue).
\_ I guess I'm just an idiot. What do the
acronyms mean?
\_ You're fired. The answer was O(n) because the data was presorted
and inserting one more element in a presorted list isn't O(n^2).
More specifically, the exact correct answer is that not enough
information has been provided to correctly answer the question.
an idiot and is asking the wrong question. I *HATE* having a
\_ You're fired if you can't figure out how to insert into a
sorted list in less than O(n).
right answer and ask it properly. This goes out to all dumb
fucks out there who don't know what they're asking. You're not
penalising people for lack of clue. You're penalising them for
not being able to read your mind! That's why so many job reqs.
\_ You need a 'special' list for that. Lists don't have
random access, and array don't have constant time
simple question across without wrongly and unfairly assuming it
insertion, so you have to marry them.
choosing the wrong interpretation of the many valid possible from
your _very_ _poorly_ designed question. How did you graduate
from Cal and get into a position to interview when you're not
capable of asking an intelligent question in a way that can be
understood by others in the field? Sheesh. I really hate the
arrogant inarticulate geeks who are incapable of seeing any fault
in themself. The fragile ego can't take it.
\_ Did you know that Phillip Nunez invented the skiplist?
\_ By the way, what is the running time of inserting
n elements into a vector? -- ilyas
\_ tjbP?
The person above "ragging" on people getting the wrong answer is
an IDIOT and is asking the wrong "question". I *HATE* having a
totally *STUPID* interviewer like that. If you're going to ask
any sort of technical "questions", you better fucking *know* the
right "answer" and ask it _properly_. This GOES OUT to all dumb
fucks out there who don't know what they're ASKING. You're not
penalising people for lack of CLUE. You're penalising them for
not being able to "read" your MIND! That's why so many job reqs.
specifically say "excellent written and _oral_ communications
skills". That's to avoid _dummy heads_ like you who can't get a
simple "question" across without wrongly and unfairly ASSUMING it
\_ When I grow up, I want to go to Bovine University!
is the other person's fault for _not_ reading your mind and
choosing the wrong INTERPRETATION of the many valid possible from
your _very_ _poorly_ designed question. How did you GRADUATE
from "Cal" and get into a position to INTERVIEW when you're not
_capable_ of asking an intelligent "question" in a way that can
be UNDERSTOOD by others in the field? _Sheesh_. I really hate
the arrogant inarticulate "geeks" who are incapable of seeing any
fault in _themself_. The fragile ego CAN'T take it.
\_ Right on.
\_ Exactly. Besides, known questions can be looked up. Better
questions investigate how a candidate thinks and how he/she can
communicate with you.
\_ The appendix to the "Deep C Secrets" book has a good
summary of answers to some of the most common MS & SV
programmer interview questions.
\_ More importantly, who cares? -sysadmin over 90k
\_ 50-60k? 65k is starting salary nowadays...
\_ shit, i got screwed again
\_ A while ago I interviewed a few people for software
engineering jobs. One of the easy questions I asked was: What
is the running time of quicksort? Four out of five candidates
got the right answer. The fifth had a certificate in computer
science from Microsoft University. He didn't have a clue about
\_ When I grow up, I'm going to Bovine University!
quicksort. Did you notice a corellation between university
degrees and people knowing about insertion sort? -emin
\_ What is your answer?
\_ The answer I was looking for would be O(n log(n)).
Answers like O(n log(n)) in average case and O(n^2)
in the worst case would be even better. A discussion
of computing models would have been fine as well.
Basically I wanted to make sure we hired people who had
a clue about efficiency, not just people who knew the
syntax of a programming language without knowing anything
about efficiency. It was not a trick question. It was
an easy question. -emin
\_ Actually, if that's the answer you're looking for, you
better refine your question. Instead of asking for the
running time, which is subject to interpretation (computing
models, average case vs. worst case, etc.), perhaps you
should ask someone to actually perform an analysis of the
running time for a given algorithm. -dans
\_ I agree. I also asked algorithm analysis questions.
My point I've known people who interview for a
programmer job without any clue of algorithms. You
ask them about quicksort and they stare at you blankly.
\_ I wasnt staring at *you*. |