Yeah. I think it's fascinating that we developers seem like the exact sort of people who would embrace Moneyball-like hiring practices, and yet so many programming interviews are just like old-school sports tryouts for scouts. Instead of judging people by how they've performed in an actual work context (at least for those who have work experience), programming interviews are often the equivalent of drafting someone based on 40 yard dash speed and arm strength.
Want to have a good laugh?
Recently i was hearing from a company.
Passed the first interview..
Passed a second technical interview..
I was asked to write the code based on some interfaces and write the tests for it.. After that i would have to defend my implementatiion choices.
Well no biggies..
The project i received had interface like
public void findUser(String user)
public void findUser(Long userId)
And other nonsensical stuff like that..
Since the instructions stated "if something is unclear//doesn't fit modify as you would do in real life"
So i changed those interfaces into something more.. Acceptable.. To return at the very least a user object..
Since there was a method that would check if you legged past a certain date, i implemented as well a method that would be called after login to update the last login..
And other stuff like that..
Heck since there was no db, to simulate it i built an in-memory hashmap accessed only via some service that would prevent concurrent modification on objects via a custom notation working like @verision, so that if two thread would try to modify the same item after fetching it via a "simulated" query, the first One to save (pseudo-commit) the result would actually commit (change the item) and the second One would receive a staple object notifications as the object had changed in the meanwhile.
I got refused the further discussion about the implementatiion supposedly because the modifications were too "intrusive" when compared to the original mandate..
Like.. You give me shit to do, i embellish it to make it more serviceable and i get complaints?
Let's just say it was hilarious...
Ah yeah, it was for a senior position for 69k euros...
I mean if you pay me this much i expect that you want me to overperform, not to just connect the black dots in a poorly designed "skill evaluation" software and stay silent... Christ, i wrote software that is currently validiting transactions through europe and the end result of our job (me and a team of 7 other developer) won the agency some praise from wsj for a system that managed to meet european stakeholder expectation and managed to highlight suspect situation in energy trading after not even One month of production data collection's from 1/20 of the full scale users//data providers... I take great pride in my job, and while i have my own shortcomings i am one of those developers that thinks that refactoring code is the basic, so if i see code that could have been written better and time/budget allows it, i'd rather change/enhance some code rather than drink img coffee on my couch being content that everything simply works..
Frankly i was quite pissed, but oh well guess i can spend 5-7 more months at my current company and look elsewhere..