That's kind of what I'm getting too, when looking for hardware jobs lately. The recruiters like my skills, but the hiring managers need them to be in something VERY SPECIFIC, and its never >quite there. For example, I have worked on electronics that went into aircraft, and needed certification by FCC, but since they weren't specifically for critical systems (just air-to-ground communications), its not quite 100% what they want. I have the same problem when it comes to medical devices. I have worked on a few, but they always want to know about SPECIFIC types of medical devices, and which government agency I had to do approvals with. If its the wrong one, then they don't call me for an interview.
(all this feedback is filtered through recruiters).
So i wonder if switching to programming will solve this dilemma? Your post seems to imply that no, it won't, that the hiring managers are STILL way too specific even in the software world.