Senior Engineer, Firmware Engineering
Indexed description
Senior Engineer, Firmware Engineering
The Data Center & Energy team is seeking an experienced Firmware Developer to join our team and contribute to the design, development, and optimization of embedded firmware for high-performance systems. The ideal candidate will have strong expertise in C*, bare-metal firmware development, and ARM Cortex processors, with a deep understanding of real-time operating systems (FreeRTOS)* and embedded software best practices.
Key Responsibilities:
- Design, develop, and debug embedded firmware for ARM Cortex-based microcontrollers.
- Implement bare-metal and RTOS-based firmware solutions, ensuring low-level hardware interaction and optimal performance.
- Work with FreeRTOS or other RTOS environments to develop real-time, efficient, and reliable applications.
- Optimize firmware performance, power consumption, and memory usage.
- Develop and maintain device drivers, communication protocols (I2C, SPI, UART, CAN, USB, etc.), and bootloaders.
- Conduct firmware validation, unit testing, and debugging using tools like JTAG, oscilloscopes, and logic analyzers.
- Collaborate with hardware, software, and product teams to ensure seamless integration.
- Follow best practices in version control (Git), continuous integration, and documentation.
- Bachelor’s or Master’s degree in Electrical Engineering, Computer Engineering, Embedded Systems, or related fields.
- 5+ years of experience in embedded firmware development.
- Strong, demonstrable proficiency in C coding
- C++ proficiency useful, including modern C++ standards (C++11/14/17).
- Experience with bare-metal firmware development and writing low-level code for microcontrollers.
- Deep understanding of ARM Cortex architecture, memory management, and peripheral configurations.
- Expertise in FreeRTOS (task scheduling, memory management, inter-task communication).
- Experience with embedded debugging tools (JTAG, SWD, GDB, etc.).
- Strong understanding of real-time constraints, power management, and performance optimization techniques.
- Familiarity with safety-critical or low-power embedded systems design principles.
- Experience with Python or Bash scripting for automation and testing.
- Knowledge of secure boot, cryptography, and firmware security best practices.
- Exposure to wireless protocols (BLE, Zigbee, LoRa, Wi-Fi).
- Familiarity with Yocto/Linux-based embedded systems.
- Experience with a variety of comms protocols (MQTT, DNP3, etc.).
Required Travel: Yes, 10% of the time
Shift Type: 1st Shift/Days
Create a free Caio profile to unlock the full index and keep your job-search signal for future recommendations.
Unlock free search