OVA.Work logo
OVA.Work
Posted 47 days agoVerified live 2d ago

Firmware Engineer

Brief overview

Remote
UndergradOr in progress
Embedded C/C++Microcontrollers and Embedded SystemsRTOSDevice DriversUARTSPII2CCANUSBEthernetJTAG/SWDGitFirmware DebuggingHardware-Software IntegrationUnit TestingARM Cortex-MOTA Firmware Updates

About the company

OVA.Work logo
OVA.Workova.work

OVA is the most advanced Automated, Intelligent, intuitive On-boarding platform for Staffing Firms of all sizes.

Job description

Summary

OVA.Work is seeking a Firmware Engineer to design, develop, test, and maintain embedded firmware for hardware products. The role focuses on microcontroller programming, device drivers, communication protocols, debugging, hardware-software integration, testing, optimization, documentation, and firmware release support.

Responsibilities

  • Design and develop embedded firmware for microcontrollers and hardware devices
  • Develop efficient and reliable firmware using **C/C++**
  • Work with microcontrollers such as **ARM Cortex-M, STM32, PIC, AVR, or similar platforms**
  • Develop and integrate device drivers, peripherals, and communication protocols
  • Work with interfaces such as **UART, SPI, I2C, CAN, USB, Ethernet, and GPIO**
  • Perform firmware debugging, testing, and troubleshooting
  • Use oscilloscopes, logic analyzers, debuggers, and other hardware tools for issue analysis
  • Collaborate with hardware, software, QA, and systems engineering teams
  • Participate in code reviews and follow coding and documentation standards
  • Optimize firmware for memory usage, performance, power consumption, and reliability
  • Investigate and resolve firmware defects and hardware-software integration issues
  • Develop unit tests and support system-level validation
  • Maintain technical documentation, design specifications, and release notes
  • Support firmware releases, upgrades, and production troubleshooting

Skills

  • Strong programming experience in Embedded C/C++
  • Good understanding of microcontrollers and embedded systems
  • Experience with RTOS such as FreeRTOS, Zephyr, or similar
  • Knowledge of embedded communication protocols:
  • UART
  • SPI
  • I2C
  • CAN
  • USB
  • Ethernet
  • Experience with debugging tools such as JTAG/SWD
  • Familiarity with Git and version-control systems
  • Understanding of memory management, interrupts, timers, DMA, and low-level hardware programming
  • Good knowledge of firmware development and debugging lifecycle
  • Strong problem-solving and analytical skills
  • Bachelor's or Master's degree in Electrical Engineering, Electronics & Communication Engineering, Computer Engineering, Embedded Systems, or a related field
  • Experience with ARM Cortex-M architecture
  • Experience with STM32, ESP32, NXP, TI, or similar platforms
  • Knowledge of bootloaders and OTA firmware updates
  • Experience with embedded Linux
  • Knowledge of device security, secure boot, encryption, or firmware signing
  • Experience with hardware bring-up and board-level debugging
  • Familiarity with Python for test automation
  • Experience with CI/CD for embedded firmware
  • Knowledge of automotive protocols such as CAN, LIN, or AUTOSAR is a plus

Qualifications

Must Haves

  • Strong programming experience in Embedded C/C++
  • Good understanding of microcontrollers and embedded systems
  • Experience with RTOS such as FreeRTOS, Zephyr, or similar
  • Knowledge of embedded communication protocols:
  • UART
  • SPI
  • I2C
  • CAN
  • USB
  • Ethernet
  • Experience with debugging tools such as JTAG/SWD
  • Familiarity with Git and version-control systems
  • Understanding of memory management, interrupts, timers, DMA, and low-level hardware programming
  • Good knowledge of firmware development and debugging lifecycle
  • Strong problem-solving and analytical skills
  • Bachelor's or Master's degree in Electrical Engineering, Electronics & Communication Engineering, Computer Engineering, Embedded Systems, or a related field

Nice to Haves

  • Experience with ARM Cortex-M architecture
  • Experience with STM32, ESP32, NXP, TI, or similar platforms
  • Knowledge of bootloaders and OTA firmware updates
  • Experience with embedded Linux
  • Knowledge of device security, secure boot, encryption, or firmware signing
  • Experience with hardware bring-up and board-level debugging
  • Familiarity with Python for test automation
  • Experience with CI/CD for embedded firmware
  • Knowledge of automotive protocols such as CAN, LIN, or AUTOSAR is a plus

Benefits

  • Remote and onsite work model

More jobs like this