2 ms·
Hi Vivek, My previous employer eventually made HackerRank a requirement for hiring. Fortunately, by that time I had already basically figured out how to freeze
by im_down_w_otp 9y ago
Hi Vivek,
My previous employer eventually made HackerRank a requirement for hiring. Fortunately, by that time I had already basically figured out how to freeze the size of my team despite having an absurdly large headcount projection attempting to being forced onto it, so I was able to ultimately abstain from using it (after catching some hell for actively opposing it).
However, if I had been in a position to have to use such a tool, there was a major failing in the way it worked (at least 2+ years ago) that would have made it impossible to derive useful meaning for me from the results.
What was critical to partially assess for me was a person's ability to fully understand the nature of basic assumptions they take for granted. To get a sense of their completeness of thought and appropriate self-doubt in that completeness.
I wanted to do this by being able to provide a black-box implementation of two simple functions:
add/2
multiply/2
Both of which would be intentionally implemented incorrectly. Then I wanted to be able to have the user write out property-based tests that would help them discover the way in which the opaque underlying implementation was flawed despite the fact that they would have no internal knowledge of the implementation.
This would have very roughly allowed me to assess:
1. How they dismantle basic lifelong concepts that have become mental reflexes like addition and multiplication, but in terms of their properties and invariants (associativity, commutativity, identity, etc).
2. Then also whether or not they could infer what was wrong with the simple opaque implementation based on which properties/invariants weren't holding as they should have. So that I could see how they handled their confidence in the completeness of their analysis.
No idea if you could do this today, but at the time the HackerRank system couldn't usefully support the above use case. Or at least the person who conducted the training had no idea how one would do such a thing.