Firmware is software or a set of instructions programmed on a hardware device, providing the necessary instructions for how the device communicates with other computer hardware. Because almost every type of computer-connected hardware requires this specialized coding, the industries in which there are opportunities for firmware engineers run the gambit from the aerospace firms to cable companies and electronic game manufacturers.
How to stand out
There are some in-demand skills employers look for that are sure to help firmware engineers differentiate themselves from their competition:
-- Excellent time and schedule management skills.
-- Knowledge of operating system driver architectures in addition to Windows and Linux.
-- Proficiency in C, assembly, RTOS constructs and real-time processing, including processes, threads, scheduling, synchronization mechanisms and memory management.
-- Experience with the full software life cycle: specification, design, implementation, integration, debugging and maintenance.
-- Superior design and problem-solving skills.
-- Strong documentation skills.
Deriving average wages for firmware engineers is difficult because of the wide range of industries they work in and the specialized coding they work on. For consultants, the average midrange hourly wage should be somewhere between US$50 and US$70, and the average high-range wage would be closer to US$85-US$115 per hour. Full-time firmware executives should earn US$75,000 to US$115,000 annually, depending on experience and specialties.
Expect to find the greatest demand for skilled firmware engineers in high-tech- and manufacturing-driven regions. For example, firmware engineers will find many opportunities in Silicon Valley, Detroit, Austin and Los Angeles.