Yeah, maybe it's a "I don't like this" vote. I tend to agree - I find embedded software engineering skills quite intimidating. Nevertheless, the market demand just isn't as high.
Where's the mystery? Someone looks at what this guy did for his business card and, to paraphrase, says "Wow, look at this guy's skills. He must charge a very, very non-average amount of money for them."
Your response to this is "But actually, according to payscale.com, an average embedded software engineer only makes X."
1. Nobody likes but-actually posts.
2. Quoting average salary when someone is commenting on how non-average a guy's skillset is isn't really relevant.
I get the "but actually" thing, but I don't think it was that.
The OP said the skills are "mindbogglingly expensive". From personal experience they aren't (I worked in a team with embedded engineers with similar skills to those required for this).
I thought this was well understood - it's been discussed here a number of times.
I added the average salaries after getting voted down to -2 and that turned around the voting.
While there are a number of issues with average salaries I think it's notable that no one is claiming the opposite.
A complete "Embedded System" (HW+SW) is orders of magnitude more complex than "Web Client Design and Implementation" (unless you approach Google/Facebook scale). The malleability of SW means you can quickly try out various techniques without too much "learning overhead". With all the existing Frameworks/Libraries/etc it becomes more of a "plug & play" proposition. Not so with Embedded Systems. You have to know EE/Electronics, programming interfaces to HW, Bootloader and OS kernel (if using one), Complex Toolchains/ICE/Simulators/Debuggers and finally; The Application. Each is a huge domain in itself and has a significant learning curve. To have all of them in "one head" is remarkable and non-trivial.
An "embedded system" can be as simple as "when this button is pressed for 3-5 seconds, turn on this light for 30 seconds." That hardly requires much of a skillset.
And as far as having all the things you mention in "one head," every member of my team can handle that easily and we're not particularly noteworthy!
I think in a sense you are proving my point. Real knowledgeable people have done the hard work to simplify much of technology so that it is easy to get started on. But the moment you are past the "commoditized" part, the "learning ramp" for an embedded system becomes exponential. Not so with pure higher-layer Software Apps. There is also the fact that an "embedded system" spans a very broad domain and hence requires a broad spectrum of knowledge and skills eg. developing a Network Appliance vs. Bread toaster.
In my own experience moving from pure applications software development (though not a web developer) to network appliances to lower-level embedded development i have been amazed at all the "hidden complexity" which you suddenly become exposed to. And this is just the software part. If you get into the hardware part you have a whole another world of knowledge to learn. Merely doing something without understanding is the difference between a "Technician" vs "Engineer/Scientist".