I hear what you are saying. In my last job I worked on real-time signal processing code, and there was a definite lack of software engineers who understood the low-level code and the various target platforms. In fact, many of the software developers, myself included, were EEs.
Where I see a problem though, and this goes for my former employer, is that the requirements for the jobs often extend beyond just being proficient with low-level development. You say you would like to "find people who even know what a pointer is". However, I read job reqs like the ones from the company rayiner posted require "extensive" experience in some particular niche of low-level coding, in addition to low-level/real-time development in general. That makes me think its easy enough to find people that companies can afford to be picky, even if they have to wait a little while.
So, if it really is that hard to find people, why write reqs and recruit in such a way as to discourage or reject people who have some experience, but not the "right" experience?