Role Overview
The Embedded Firmware Engineer is responsible for developing, testing, and maintaining firmware for embedded products. This role supports the development of reliable, high-quality embedded solutions by implementing firmware features, fixing defects, and collaborating with hardware and software teams. The role helps accelerate product development while ensuring firmware stability and quality.
Responsibilities
- Develop firmware modules using Embedded C.
- Interface firmware with peripherals such as UART, SPI, I2C, USB, ADC, GPIO, Timers, and PWM.
- Debug firmware using hardware debugging tools.
- Read and understand microcontroller datasheets and reference manuals.
- Integrate firmware with hardware and application software.
- Perform root cause analysis for firmware issues.
- Document firmware design, test results, and known issues.
- Support manufacturing and field issue investigations when required.
- Contribute to timely delivery of firmware releases.
- Follow engineering best practices and coding standards.
- Continuously improve firmware quality through testing and code optimization.
Requirements
- Bachelor's degree in Electronics Communication Engineering, Electrical Engineering, Computer Science, Instrumentation, or related field.
- 0–1 year of experience.
- Knowledge of Embedded C/C++ programming.
- Familiarity with ARM Cortex-M, STM32, Renesas, NXP, TI, or Microchip microcontrollers is an advantage.
- Worked on communication protocols (UART, SPI, I2C, USB, CAN).
- Exposure to RTOS is an added advantage.
- Strong analytical, troubleshooting, and problem-solving skills.
- Good communication and willingness to learn.
Skills
- Embedded C
- Microcontrollers
- UART
- SPI
- I2C