This is why we at Lytmus believe the most effective way to assess a candidate is to see how they perform on a real work sample. We've built up a virtual machine based platform that allows candidates to showcase their skills in a real development environment with working code cases (web, mobile, data, systems, etc.). Most interviewing methods like algorithmic challenges often only provide signal into a discrete skill that can be acquired through practice, whereas what matters is whether or not you can actually work on real world projects, understand an existing code base and perform on the job as opposed to on an interview coding challenge. Google's SVP of People Ops Laszlo Bock also writes about the ineffectiveness of indirect tests and their weak correlation with on the job performance.
Sorry to hear about your experience with brainteaser coding interviews. They really are not a true test of your abilities or value as a developer. From personal experience the people who tend to do well on those questions have just practiced that discrete skill a lot and may or may not actually excel on the job, and lots of people who bomb these interviews turn out to be amazing developers. Take the example of the guy who wrote homebrew but didn't get hired at Google because he flunked a question about trees.
That's why at Lytmus we've created a way to interview with real world coding projects. We spin up VMs with full development environments where companies can ask you to do the kinds of things you actually do on the job instead of inverting binary trees and what not.
Would love to get your thoughts as a candidate who's frustrated with current interview processes, we have a demo available on our home page (www.lytmus.com).