Live data from Hacker News

Why we don't hire programmers based on puzzles and tricks

37signals.com

271–280 of 460 posts

Re: Why we don't hire programmers based on puzzles and tricks

#271
post #44

Sigh. This is the issue that will just never die. Let's just summarize the points: - Not everyone can produce real-world code. Most of what we do for a living belongs to our employer. Side projects, particularly in the US, can be an issue for IP reasons (California is somewhat of an exception here); - Side projects, even open source projects, can be of questionable "real world" value; - I've personally encountered ma…

One thing you're testing for is how well their brain works with an excess of adrenaline floating around in their body. All of the best interviewers I've known take great pains to make the interviewer feel comfortable and chatty - after all, they aren't going to be filled with interview anxiety when they're actually working there. A minority of your applicants are going to perform badly in that situation because the a…

How did you happen to call him for second interview if he failed first one? Were the two interviews seperated by 6 months or so?

Re: Why we don't hire programmers based on puzzles and tricks

#272
post #145

Earlier quoted context omitted.

It's impossible to get real insight from them, because you can't differentiate between those who worked it out, and those who have read about it. The fact that they're involved enough in the industry to know about fizzbuzz is still a strong signal. It will only come up if participate in some sort of developer community, which, I suspect, is something that the completely incompetent don't do, as a rule. Once again, it…

Once again, it's not designed to find the top talent. It's merely a high pass filter that removes the hopeless from the set of people to consider. I'm sure it is useful in some situations, particularly in big companies with a broken hiring process. I imagine 37Signals don't find it useful as they have a more effective screening process, and people coming to interview simply couldn't possibly be that bad as they're re…

'select the second highest number in this list' is actually O(n) and does not require sorting.

Re: Why we don't hire programmers based on puzzles and tricks

#273

I've been interviewing pretty much non-stop since last April. I feel like I've become somewhat of an expert when it comes to interviewing processes. First off, as I've become a better programmer, I feel this fact is best shown in my opinions. When I first started out, if you had asked me my opinion of PHP vs Python, I would not have been able to say anything coherent. Now that I've worked with both technologies, my o…

I think you're wrong about the 100% bad place to work just because someone asked you to reverse a string without using library functions. I would think your computer science education would have prepared you to plan out such an algorithm. Sadly, its pretty had for a place to confirm you have subconscious skills by asking a question and then waiting for you to come back the next day with the answer once it popped into…

First off, I'm self taught, I don't have any computer science education. Secondly, it wouldn't be too hard to give me an actual problem that the company is actually having, and letting me think about it for a few days, then come back with my solution. Why must all interview problems be made up?

Re: Why we don't hire programmers based on puzzles and tricks

#274

As Cletus wrote in his detailed comment, "this is the issue that will just never die." We discuss company hiring procedures here on Hacker News over and over and over, because most of us have applied for a job at least once in our life, and those of us who are building up a start-up have to think about whom we would hire. The point in the submitted blog post by 37 Signals, "The only reliable gauge I’ve found for futu…

All this teeth-gnashing regarding programming and logic puzzles are simply to cover up the simple fact that most people (even around here) are insecure about their programming skill, and more-so their intelligence. The fact is that these types of questions are indeed backed up by the very research you cite, namely that a work-sample test and general mental ability are the only reliable predictors of job performance.…

> most people (even around here) are insecure about their programming skill, and more-so their intelligence.

> Instead of writing endless blog posts and internet comments about how useless these tests are ... just get better at them! You'll be better off for it.

This doesn't hang together. Will getting "better" at programming tests & logic puzzles make you a better programmer? Make you more intelligent?

If not, doesn't that illustrate precisely why people seem to have a problem with these tests? Namely, that they are primarily a measure of preparation & studying for the exam?

Re: Why we don't hire programmers based on puzzles and tricks

#275
post #250

I've been interviewing pretty much non-stop since last April. I feel like I've become somewhat of an expert when it comes to interviewing processes. First off, as I've become a better programmer, I feel this fact is best shown in my opinions. When I first started out, if you had asked me my opinion of PHP vs Python, I would not have been able to say anything coherent. Now that I've worked with both technologies, my o…

You mean ' '.join(the_string.split()[::-1]). Which is a totally reasonable thing to do, but doesn't exercise the same kind of thinking as doing it letter by letter. Can you solve it letter by letter, even now that you're not in an interview?

Doesn't exercise the same kind of thinking as doing it letter by letter? So what?

Solving this problem in haskell doesn't show the same kind of thinking as solving it in PHP, whats your point?

You basically saying you have to solve this problem they way I say you have to. Thats a sure-fire way to tell if the company is worth working for or not.

Re: Why we don't hire programmers based on puzzles and tricks

#277
post #263

Earlier quoted context omitted.

Come to think of it, swapping two variables in place is a horrible question - because you can't really do it! A statement like a = a + b requires the (invisible) presence of a register where a + b (or xor or whatever) is placed right before being written back to a. But then you might as well use this register directly for the swap instead of dabbling around with one-to-one functions.

Also, it depends on which language you're using... $ irb irb(main):001:0> a = 1 => 1 irb(main):002:0> b = 2 => 2 irb(main):003:0> b, a = a, b => [1, 2] irb(main):004:0> puts "#{a} #{b}" 2 1 => nil (obviously this has the same flaw you mention, the interpreter is doing stuff for you. It follows the letter of the 'no intermediate variables' only.)

You can also follow the letter in C, Java, etc.:

  a ^= b
  b ^= a
  a ^= b

Re: Why we don't hire programmers based on puzzles and tricks

#278

Earlier quoted context omitted.

One thing you're testing for is how well their brain works with an excess of adrenaline floating around in their body. All of the best interviewers I've known take great pains to make the interviewer feel comfortable and chatty - after all, they aren't going to be filled with interview anxiety when they're actually working there. A minority of your applicants are going to perform badly in that situation because the a…

"A minority of your applicants are going to perform badly in that situation because the adrenal glands will effectively reduce the output prefrontal cortex below an acceptable level" I have an off topic question. I don't see what the problem being discussed has to do with how glands reduce activity in certain parts of the brain. Sounds to me like a fancy way of saying 'people don't perform well under stress'. You cou…

My thought is that it's a real phenomenon that occurs in a certain subset of people during a job interview, therefore, its obviously relevant

Re: Why we don't hire programmers based on puzzles and tricks

#279

Damn right. Even worse than whiteboarding random algorithms are logic puzzles. I can sort of see how implementing my own hash table fits into a dev job, but I why manhole covers are round, or light bulbs in a room has absolutely nothing to do with anything relevant in our field. People who use logic puzzles as proxies for anything in an interview have my everlasting scorn.

My all-time favorite interview was one when I was interviewing for an SDET intern position at Microsoft. That interview (one in a day of four interviews) featured a great progression: logic puzzle, code the fixed input solution, code the n input solution, test your solution. The puzzle was (apologies to the interviewer, but it IS a common puzzle) the eight ball and balance problem, where one ball is heavier than the…

I got to say, interview puzzles, while hated by the jobless, are lots of fun to think about. That sounds like a fun interview.

Re: Why we don't hire programmers based on puzzles and tricks

#280

Earlier quoted context omitted.

My all-time favorite interview was one when I was interviewing for an SDET intern position at Microsoft. That interview (one in a day of four interviews) featured a great progression: logic puzzle, code the fixed input solution, code the n input solution, test your solution. The puzzle was (apologies to the interviewer, but it IS a common puzzle) the eight ball and balance problem, where one ball is heavier than the…

Anyone who's studied information theory would destroy that puzzle though. In the same way that someone with a physics degree would perform way above average on a "count the stars" question. Or someone whose dissertation was on computational biology would excel at a string-matching algorithm question. It is an example of the interviewer (or company/process) mistaking a specific problem as representative of all problem…

Anyone who's studied information theory would destroy that puzzle though.

I understand this comment in a general sense--the scale's behavior represents two possible states, so you can use it to filter the answer space in O(log_2 N) ala binary search, and you can get away with O[(log_2 N) - 1] if you partition the answer space the right way.

But what's the information theoretic interpretation of the problem?

Post reply on HN