4 ms·
> I’m looking for them to find the right abstraction—one that will make it easy to extend the problem and for junior devs to look at the solution function and u
by pfarnsworth 8y ago
> I’m looking for them to find the right abstraction—one that will make it easy to extend the problem and for junior devs to look at the solution function and understand exactly what it’s doing. Almost no one passes.
If no one passes, it means you are instead asking them to recreate what YOU would do, and basically asking them to be a mind reader. A good interviewer would know that there is more than 1 solution to everything, and that there are equal, but completely different solutions to the same problem. Someone could abstract the problem completely different from yours, but still be correct.
- baron816 8y agoI tell them exactly what I’m looking for and am very clear up front. Many of them don’t follow orders, they put everything into one big function and don’t try to abstract at all.
- codingdave 8y agoSo you are expecting them to start with the abstraction, before coming up with a solution?
- enedil 8y agoOh, come on, the solution is trivial.
- emmanuel_1234 8y agoSo trivial that I can't really see what's there to abstract. It's literally a one liner in Python. [x for x in my_list if x % 2 == 0] + [x for x in my_list if x % 2 != 0]
- codingdave 8y agoThat doesn't re-build it into a linked list as his example showed. It also does multiple passes through the data, which should be fun if there are millions of items. It is a great question for talking about performance tuning an algorithm, but just seems bizarre to be pushing for abstraction on this problem.
- ldd 8y agoMaybe something like lambda f: [x for x in my_list if f(x)] + [x for x in my_list if not f(x)]