"Normally, when I heard this whole "I don't do coding tests" attitude, it comes from a candidate who thinks that he/she is so amazing that the rules don't apply."

You know, I really don't think that's it for a lot of people who don't like technical "interviews". You're seeing this as an ego issue, when there really are problems with the technical exam/interview, especially when it is abused.

Personally, I think the problems start with the fact that we're calling what is actually an exam an "interview", and it's an exam taken under very stressful circumstances. Think of it this way - I read a blog post about someone who studied for the california bar for 100 hours and passed. The exam itself was 3 days long. Now, 100 hours is notably low, and part of the point of the post was to suggest that you don't actually need to study as long as people often do.

But think about this think about what it takes to prepare for a technical interview. Have you read "cracking the coding interview"? Those are difficult problems, and you need to be able to solve them at a white board within 45 minutes (or at least get close enough that you can do it with some, but not too much, coaching). It's not at all over the top that a rusty person would need to spend 50+ hours to get fluid with this. If your data structures, bit manipulation, tree traversal, dynamic programming, threading, or other topics are very rusty, you will need to study before beginning your study. It's not at all uncommon to spend an amount of time that starts to approach bar exam preparation levels. One interview typically lasts all day. So preparing for and completing three interviews is actually roughly on a par with taking the bar exam.

Unfortunately, you rarely get feedback on your performance (for legal reasons, I understand). You have no idea if your exam was graded fairly or consistently, and you have no idea if your examiners have the credentials and expertise to actually understand a novel solution. Sometimes you get advance warning about what might be tested but other times you are completely blindsided by the questions. Once you pass the bar, you've passed. Software interviews, on the other hand, you have to do over and over. And even worse, we often present these tests as sniffing out frauds rather than looking for exceptional talent (ie., an exceptional performance on these exams rarely get you much above the job offered, so it's more about not losing than winning).

Really, there's a tremendous amount to object to here. You don't have to think you're amazing or above it all to start thinking this is a serious problem that may be driving talented people away from our industry. I've read various blog posts about potentially promising candidates who aren't interviewing anymore simply because they're too intimidated, or because they just can't afford to put 50+ hours of study into something that may be completely capricious and depend purely on what some overworked programmer thinks is important that day. I can't imagine my graduate program's MS exit exam, or the bar, or the state nursing license board, or any respectable exam committee getting away with being so capricious and opaque.

Now, I've hired before, and I'd be afraid to hire without a technical exam. So I hear you, I really do. And I've been on technical interviews, even tough ones, that I actually kind of enjoyed (I so rarely do real dynamic programming or tree traversal, and it is actually kind of fun, under the right circumstances).

But we spend so much time talking about a desperate shortage of software engineers, and so little time actually recognizing some of the things that make our industry really exceptionally unpleasant. I think we should recognize that tech exam/interviews, while perhaps necessary, are also a potential problem, enough of a problem that some people are starting to boycott them altogether (I will do them, though I won't do an unpaid take-home ever again).

It may in fact be an ego problem some of the time, but since there's clearly a more legitimate reason to object to this practice, let's start there, rather than dismissing this as an ego problem.