Before I could solve your average programming riddle I scoffed at them. Now that I have some experience solving them I feel like it is truly a form of mind expanding knowledge and should be valued not only in hiring but in life in general.
Before I could solve your average programming riddle I scoffed at them. Now that I have some experience solving them I feel like it is truly a form of mind expanding knowledge and should be valued not only in hiring but in life in general.
That's not an unpopular opinion among people who devote energy to solving programming riddles.
The need to validate one's own life choices is a common cognitive bias, if nothing else.
Giving a candidate a problem they haven't seen before and observing their problem solving skills and mentality doesn't sound so bad on paper. However the process has been gamified and as a result the expectations for what a candidate should know and accomplish have increased. This ends up favoring younger candidates and/or fresh grads, since on average they can expend greater time and energy into studying for these types of interviews and their algorithms & data structure courses are still fresh in their minds. A more senior candidate or a person with more responsibilities outside of work (taking care of children, parents, etc) won't be able to invest as much time into studying these types of problems. The original purpose of the interview is also obfuscated - did the candidate genuinely show good problem solving skills or did they see the question before and merely memorized the solution? As a hiring manager I've seen multiple instances of the latter.
I think the utility of spending time on these problems varies from person to person. I personally find it more useful to delve into distributed systems, cryptopgraphy, networking, or operating systems. These topics have made me a much better engineer and improved my problem solving skills, more so than programming riddles which gave me diminishing returns over time.