> There's nothing wrong with on-site coding challenges, white boarding, and a good chunk of brain teasers.
If a company is looking for the kind of candidate that can and wants to work through those problems, then by all means they should do it. I personally don't recommend those kinds of companies because I'm unconvinced that on-side coding challenges and white boarding do much more than to weed out the really unqualified people and humiliate nervous but talented engineers.
Brain teasers don't measure anything other than that the candidate memorized the answers to common brain teasers, or as I've witnesses on more than one occasion, their ability to remember the answer given to them by a third party recruiter.
Maybe brain teasers are for you, and you can go work for companies that think brain teasers measure something. I'll go work for the majority of companies that don't fall for that idea.
> Having people code a small problem might be by far the best way to understand how they can do the job.
That can be, especially for junior engineers. If a company still wants to run aptitude tests on mid-level and senior engineers with years of experience, good references, and personnel projects, then they're being lazy. The fact that I don't want to burn myself out doing unpaid work at this point in my career isn't my problem.
Companies are free to not hire me. LOL
> Your Github code does not demonstrate what people are looking for.
And yet I've been explicitly hired because I had coded something relevant on my GitHub profile and could talk about it in detail in person. It sounds like you believe that a significant number of people with personal projects are really just bullshitters, and that making them write more code is going to tell you whether you want to work with that person.
No personal offense, but what you are suggesting represents exactly the type of company I want to avoid for good reason: Companies that think they can conveniently measure a candidate's aptitude through unproven metrics like brain teasers.