Whenever the opportunity arises, I like to chat with students from my alma mater, reminisce nostalgically about the good old days, complain about how things have changed, and give advice about the real world of life, careers, and relationships. I try my best to ignore their looks of disgust and constant reminders of how recently I graduated from college. While it hasn't been long since I traded my books for a business card, it's been long enough to discover how much I didn't know. Not only is the market much broader than that, but I've also come to realize that the software industry is very provincial.
Embedded systems are a good example.
If you consider that a microprocessor and memory are what make a computer a computer, then PCs are only part of the picture. If you think about it, this isn't all that surprising. And all computers need software. This need for software makes it somewhat surprising that embedded systems have traditionally been the realm of electrical engineers rather than computer scientists. While some unique expertise is obviously required, embedded-systems developers still face many of the same issues as programmers in other fields.