I work with a bunch of people that wouldn't know a tree if it fell on them, and it's amazingly painful. They write amazingly slow-running code simply because they don't even know that there's a such thing as an O(n^2) algorithm.
I've interviewed at Google and the problems they ask are great. They don't care about trivial minutia like what programming languages you know. They care that you can approach a hard problem, apply your knowledge of computer science, and generate a solution that's simple and efficient. That's the kind of codebase I want to work on, so that's the kind of interview questions I would want to ask.
That's what is refreshing about Pulse's process: you actually work on something and present it to them. This is very practical approach, and requires the use of the candidate's facilities which include, but are by no means limited to, computer-science understanding.
As an aside, I've also worked with people who have good technical skills but had serious attitude problems. Those people tend to have a very negative effect on company culture.
The Google approach is like unit testing only one specific feature of a candidate. Pulse's approach is more like an integration test.
Granted some people are still working on embedded systems and low level networking code etc, but that's hardly the default.
PS: Today I needed to break out a decompiler because a client lost the source code on a small website. When exactly does that show up in an interview?
No doubt there's plenty of money to be made in putting building blocks together and knowing how to play with some tools, but that's not the kind of employee that Google, etc., are looking for. It's assumed that if you know A* and compilers, you can also download tools from the internet, run them, and see if they solved your problem.
Now days 99+% of all developers incorporate some API as a core part of their software. Take the game industry the number of people writing direct X is tiny compared to those who use it. John D Carmack (http://en.wikipedia.org/wiki/John_D._Carmack) is clearly a "software engineer" yet he spends most of his time working on top of DirectX or some other API. Yet, when you dig into Direct X it's built on yet more API's and at the same time anything written on Direct X has a tun of boilerplate code you need to get right or it fails badly.
PS: Ruby on Rails is a perfect example of what I am talking about. By your definition anyone using it is "support" or a "code monkey" even if they start from scratch and build a billion dollar company simply because they spend more time thinking about the API than pointers.
Also, Carmack is famous for the algorithms he's designed, not for using DirectX.