| > Becoming really good at programming requires being able to focus on an actually difficult problem not work through a simplified example while entertaining an audience There are multiple ways to "become really good at programming". A company of any size needs people who can churn through well-defined problems quickly, and most live coding tests are relatively well-suited to selecting for that. They also need people who do other things well: * tackle large, ill-defined problems, alone or in a small team
* identify, triage, and (if necessary) solve problems as they emerge
* refactor existing implementations that have outgrown their initial architecture
* identify trends and estimate when they will lead to scaling issues in the future
* communicate complex problems to people without the necessary context
* break down complex solutions into discrete, well-defined steps that can be tracked to completion They also need people who can accurately estimate how long all of the above will take... unfortunately, as we all know, such people do not exist. If you're hiring someone to churn through well-defined problems, live coding interviews are likely a good fit out of the box. If you're hiring someone to reinforce a weakness in your organization's ability to do any of the other things above, live coding exercises are at best a loose framework that we're all familiar with to try to get at whether or not they have those skills. |
If one doesn't even know how to complete well-defined tasks reasonably quickly, I can't imagine how they would be able to break down complex tasks to these smaller, well-defined tasks, and accurately estimate the expected effort needed.
This sounds almost Dilbert-esque. It seems like a lot of people here want to be a pointy-haired boss (or pointy-haired tech lead)!