Great post.
April Joyner

It might take several posts for me to give the rationale for the current approach to technical interviews, because it is a long story.

During the dotcom bubble of the late 1990s, a lot of tech companies grew (or attempted to grow) very fast, so they hired anyone they could. Some of these people (at least) did not have much of a software engineering/computer science background, and/or were not able to come up to speed on projects, so these projects (and in some cases, at least, the companies) suffered.

After the bubble burst, many companies (at least) could not hire as aggressively as they used to. So they had to be selective, especially because they were still being flooded with resumes. Around this time, the hiring philosophies of Joel Spolsky, a Microsoft engineer who eventually formed his own company, Fog Creek Software, began to gain traction in the tech industry. The article below lays out his general philosophy.

This is just the tip of the iceberg. Hopefully it will give you an idea of the rationale for the current approach. As far as eliminating or overhauling it, as far as I know, that has not happened (in general). Part of the reason is because there is no industry-wide consensus on what a software engineer, computer scientist, etc. is supposed to be able to do. Thus, there is a lot of subjectivity in tech interviews. The topic is covered in some detail in this article by Steve Yegge, who worked for Amazon and Google. (I’m not sure if he is still at Google.) Note the “interview anti-loop” section.

Thank you for taking an interest in this subject. We need more people to cover it so the general public is aware that there is no shortage of engineers, and that hiring practices at many tech companies (at least) are arbitrary.