3 ms·
> What's wrong with "I'd use a library" or "I'd Google it"? Saying "I'd use a library" isn't a reliable signal. If you hire based on it, everyone will just par
by cousin_it 6y ago
> What's wrong with "I'd use a library" or "I'd Google it"?
Saying "I'd use a library" isn't a reliable signal. If you hire based on it, everyone will just parrot it. On the other hand, being able to solve programming/math problems is a reliable signal. Linus and Jeff Dean are very good at such problems and it's not a coincidence.
- nicoburns 6y ago> Saying "I'd use a library" isn't a reliable signal. True. That's why you shouldn't be asking a question where that's a good answer in the first place. > Linus and Jeff Dean are very good at such problems and it's not a coincidence. Sure. But being good at these problems also isn't what makes Jeff Dean or Linus good programmers. Being good at solving novel problems is. The problem with the linked list question is that half of your interviewees will have seen it before and half of them wont, thus giving you quite a biased view on them.
- cousin_it 6y ago> half of your interviewees will have seen it before and half of them wont That's just not true at all. There's a huge supply of algorithmic problems and it's easy to invent new ones, so a typical problem given in an interview will be novel to pretty much all interviewees.
- prepend 6y ago> That's why you shouldn't be asking a question where that's a good answer in the first place. I’d like a better question, but time is limited and spending lots of time on explaining the context behind a real example is harder. Although it’s not like I’m married to these questions and would gladly replace them with some generic question that tries to address threading, resource management, and whatever linked lists are supposed to test.
- collyw 6y agoDisagree. The guy who built the system I am now maintaining reinvented the wheel many times. So now we have a lot of undocumented buggy code. Most people aren't programming the linux kernel, they are writing a variation on web based CRUD.