I think a lot of what was said is right on - hiring the right people is hard and I've really stuggled with that at times.
But I think making people code for free is somewhat unethical unless it's for open source. As an applicant I would feel that I was being taken advantage of if you used my code, didn't open source it, and didn't give me the job.
I'm not a lawyer, so I could be totally wrong on this one - but I'd be a little worried that this could become grounds for a lawsuit. Perhaps not a serious one, but, for example, a lawsuit to obstruct an eventual IPO or investment.
I agree. At least he's upfront about his ridiculous standards in his blog.
The amount of code and then the use of the code strikes me as unethical. I don't see where the company would own any of that code whether or not the coder is hired. If you want a contractor for a short project you should pay for the work, file proper tax documents, etc.
Presumably, you're only providing suggestions for what your applicant writes; if they want to demonstrate their ability by writing a modular synthesizer simulator in Ruby with an AJAX front end, you're going to let them do that instead. Open source or not, asking for portions of your own product up front is spec work, and it's also unprofessional.
Call it what you will, but as a hiring manager you really should review as much code as possible before hiring. Usually they can't show you proprietary code from their last company, so unless they've already done open source contributions, there won't be much to look at unless you give them a project.
In the past I've given candidates projects that we've come up with together. Check out the ones mentioned in the article... fairly straightforward Rails plugins. One of the was particularly successful, and included in the Advanced Rails Recipe book.
So you're fine with (a) open source contributors just providing you with samples of their previous work, (b) people who can show you non-public code just showing you that, and (c) candidates coming up with example projects totally unrelated to your own products, so long as it's demonstrative of the right expertise.
But I think making people code for free is somewhat unethical unless it's for open source. As an applicant I would feel that I was being taken advantage of if you used my code, didn't open source it, and didn't give me the job.
I'm not a lawyer, so I could be totally wrong on this one - but I'd be a little worried that this could become grounds for a lawsuit. Perhaps not a serious one, but, for example, a lawsuit to obstruct an eventual IPO or investment.