Embedded developers are a special breed; EEs who have taken on firmware development responsibilities. That may be changing. Jack Ganssle proposes a heretical view: as technology evolves, greater specialization will take place in embedded development. In the future, Jack suggests, firmware developers may largely be software developers.
The cause is complexity. This week's focus on consumer electronics shows where that kind of complexity can be found.
Besides being more complex, there are simply more embedded systems than ever before. They are finding their way into every walk of life. There's a Z8 in your Sonicare toothbrush, an 'HC11 in your Coke machine, a 32-bit RISC processor in your MP3 player, and a 64-bit MIPS processor in your Aibo you do have an Aibo, don't you? (See Fundamentals of Embedded Software).
With so many embedded systems being developed, where do the developers come from? Fortunately complexity breeds more sophisticated processes. Assembly language has given way to C and C++, and even higher-abstraction modeling tools are coming into play, tools that programmers working not so close to the metal can use. Those tools and higher level development open the door to hordes of IT folks who can embrace embedded software development and succeed without an intimate familiarity with hardware.