Embedded systems engineer
Embedded systems development ranges from things like microprocessor-based control systems to SoC design and device software development for consumer electronics, medical, and military applications. These engineers may focus on designing software components and physical dynamics of a system with real-time and concurrent behaviors. Engineers and industry love to argue what an embedded system is, but the general definition of an embedded system is any system with an integrated circuit that is not a general-purpose computer.
"Embedded systems is growing. It's big. That's kind of the Internet of Things," Liu said. "That requires software as well as hardware confidence."
A modem with embedded systems.
(Source: Wikipedia Commons)
Within this field, engineers may use data science to make sense of information gathered by the embedded systems. Think sensors integrated into SoCs, tuning systems for strings on a guitar, or fielding information from a car's embedded subsystem.
The prevalence of smaller, lower-power, and lower-cost embedded systems will allow for more microprocessors to exist within one device. Will said these embedded systems will have to communicate with one another, and embedded systems engineers will have to know about embedded networks.
"The chips themselves are becoming more powerful. Embedded systems are actually going to have an operating system. With a higher and higher level of abstraction in microprocessors, you're writing multithreaded applications," he said. "Engineers will need to know a number of different software tools, embedded C, and languages -- also a fundamental understanding of networks and inter-device communication."
Ganssle wrote in an email: "I think that as engineers are being hired to use software to replace hardware, but the opposite is also happening." Field-programmable gate arrays "are an example where the hardware is so much faster than software can be. Of course, it's muddled as that kind of hardware design is very much like software, since the engineers are using Verilog, VHDL, etc."