This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
Robert Half is working with a company in the Madison, WI area who's seeking an Embedded Software Engineer to support development of complex embedded systems with a strong focus on embedded Linux, low-level hardware/software integration, and real-time system development.
Job Responsibility:
Design, develop, and maintain embedded Linux software for complex real-time systems
Write, modify, and debug Linux device drivers supporting custom hardware
Integrate hardware components using low-level communication protocols including PCIe, SPI, I²C, UART, and USB
Work closely with electrical, FPGA, mechanical, and systems engineering teams to support hardware integration into the OS layer
Support timing-sensitive control systems and hardware subsystems
Troubleshoot issues spanning hardware, firmware, drivers, and operating systems
Develop unit and integration testing for embedded systems validation
Document software architecture, implementations, and validation efforts
Requirements:
Bachelor’s degree in Computer Engineering, Electrical Engineering, Computer Science, or similar technical field
3–5 years of embedded software development experience
Strong hands-on experience with embedded Linux environments including: Yocto or similar embedded Linux build systems
Kernel-level development and debugging
Linux device driver development
Experience with hardware/software integration involving: PCIe
SPI
I²C
UART
USB
Strong understanding of how hardware interfaces with the operating system layer
Strong C/C++ programming experience
Comfortable working independently on complex low-level engineering problems
Must be authorized to work in the U.S. without sponsorship
Nice to have:
Experience with GPUs or SoC accelerators
Familiarity with real-time control systems
Experience working within regulated development environments
Background collaborating with cross-functional hardware and firmware teams
Exposure to robotics, automation, or other complex hardware environments