It's the companies we work for (worked, in my case). They tend to be hardware companies, and software is not what they see as a critical, or even top ten, concern. It's not "real" engineering (not that most software engineering is real engineering, but in embedded, safety-critical systems it is, or at least should be). Programmers are pegged at a salary somewhere between technicians and lower level engineers.
It's gotten better over the years, but there are still huge misunderstandings and misvaluations of the different work. Obviously a hardware system needs hardware engineers, but nearly every hardware system these days involves software systems that do the actual work of coordination, communication, and control. It can't be treated as an afterthought but it often is.
It's gotten better over the years, but there are still huge misunderstandings and misvaluations of the different work. Obviously a hardware system needs hardware engineers, but nearly every hardware system these days involves software systems that do the actual work of coordination, communication, and control. It can't be treated as an afterthought but it often is.