Hacker News new | ask | show | jobs
by commandlinefan 3034 days ago
Well, although I'm not one of these types that is insulted by online coding challenges as a hiring prerequisite, I think they're probably a lot more pointless than you believe. I've been working as a developer now for a little over 25 years - although online coding "challenges" are a relatively new thing, I've been given actual sit-down, pencil-and-paper, quiet room for an hour aptitude/language trivia tests as prerequisites for jobs in the past. This was actually the sort of thing that certifications (remember Java certifications?) were supposed to obsolete but never really did.

Last year I found myself back on the market for the first time in quite a while and was presented with an online coding "challenge". It was actually really trivial, but I failed it anyway, because I'd never done one before. I'm used to coding in an IDE (or just in good-old vi), not in an online editor, and not with a ten minute time limit. The "challenge" was to write a Java function that would take in a number in words (like "four") between one and ten and spit out the numeric value of that number (like "4"). Well, it was timed, and I sort of panicked, thinking I wouldn't have enough time, so I jumped into it without reading the description. I skimmed over the description, and though I had to write a Java _program_ that would accept a _list_ of numbers, parse the list, and output their numeric values. So I hurried up and started coding in the (completely unfamiliar) online editor. Then I copied and pasted the whole thing into an editor on my local machine so I could compile it and run it and check for silly mistakes (since I was under the gun). Only after I had verified and tested it locally did I re-read the description and realized I had done the wrong "challenge"... so I tried (with three minutes on the clock) to refactor it so that the part that read in the number in words was a function inside my overall program. With maybe 30 seconds to spare I had refactored and re-tested it with a note that (/* here is the function you asked for */). Well, they failed me. Why? Because I took way too long to complete such a simple task...

Now, if I had to take another one of these today, I'd read the instructions very carefully (I'd probably spend the first minute reading and making sure I didn't overlook anything - which of course we should always do anyway) - but it struck me how infinitely game-able and simplistic that portion of the modern job interview is. It doesn't much measure programming ability so much as your familiarity with that sort of exam, which us old folks ain't.