Embedded Firmware Engineer
Confidential client · Full-time
Overview
We are looking for an experienced embedded firmware developer to create and maintain software for microcontroller-based devices. You will work closely with hardware and software teams to develop reliable, real-time applications using industry-standard tools and processes.
Key Responsibilities
- Develop firmware in C for STM32 and Atmel microcontrollers, including device drivers for I2C, SPI, USB-PD, BLE, GPIO, UART, JTAG, and one-wire interfaces.
- Implement and maintain FreeRTOS-based applications, managing tasks, multithreading, CPU scheduling, memory, and firmware updates.
- Perform hardware bring-up by reading schematics, component datasheets, and layout drawings.
- Integrate hardware and software using oscilloscopes, logic analyzers, and other test equipment.
- Debug firmware using IAR, GDB, and related debugging tools.
- Lead technical discussions and communicate progress with internal and external stakeholders.
- Follow software development and project management life cycle processes.
Requirements
- Minimum 7 years of experience in embedded C development and data structures.
- Strong knowledge of FreeRTOS or similar real-time operating systems, including tasks, synchronization, multithreading, scheduling, memory management, and firmware updates.
- Hands-on experience with STM32 Cube or Atmel MCU platforms and peripheral drivers such as I2C, SPI, USB-PD, BLE, GPIO, UART, JTAG, and one-wire.
- Proficiency with the IAR development environment and debugging tools like GDB and IAR.
- Experience reading hardware schematics and using oscilloscopes and logic analyzers for hardware/software integration.
- Excellent debugging and troubleshooting skills.
- Strong coding, design, and communication skills with the ability to work independently and lead technical efforts.
- Understanding of software development and project management life cycle.
We'll score your resume against this role and send you a free assessment. Sampoorna's team follows up directly with strong matches.