firmware engineer

The Technical
United States
25 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
3 years minimum
Working hours
Regular working hours
Job source

Tech stack

Testing (Software) Board Bringup Unit Testing Booting (BIOS) C++ (Programming Language) Capability Maturity Model Integration Software Quality Code Review Continuous Delivery Software Debugging Embedded C Embedded Software
+13 more
Firmware Hardware Interface Design Hardware-In-The-Loop Simulation MISRA C (C Programming Language) Modbus Real-Time Operating Systems ISO/IEC 15504 Software Engineering Software Requirements Analysis Multithreading Integration Tests Bare Metal Software Version Control

Job description

We are seeking a Senior Firmware Engineer to develop reliable C/C++ software for a next-generation Battery Management System (BMS). In this role, you will collaborate with hardware and software teams to design, implement, test, debug, and deploy firmware for embedded controllers and power electronics systems., * Derive software requirements and design features from product specifications while supporting compliance with applicable safety and reliability standards.

  • Develop embedded C/C++ firmware modules for sensor monitoring, actuator control, and system management.
  • Create hardware self-test routines and manufacturing test software to support hardware bring-up and end-of-line validation.
  • Design and implement microcontroller firmware for embedded systems, sensors, and power flow control circuitry within a Battery Management System.
  • Contribute to unit testing, integration testing, and continuous delivery processes to ensure high-quality firmware releases.
  • Support product deployment and field operations by troubleshooting and debugging firmware issues in real-world environments.
  • Develop robust, maintainable, and well-documented code following industry best practices.
  • Lead complex debugging activities to identify and resolve software defects, reliability issues, and performance bottlenecks.
  • Promote adherence to formal software development processes, including version control, code reviews, testing, and compliance documentation.

Requirements

  • 3+ years of firmware development experience in embedded or RTOS-based systems, preferably involving battery management systems, power electronics, or related applications.
  • Strong proficiency in C and/or C++ for real-time, multithreaded embedded applications.
  • Solid understanding of embedded system fundamentals, including bare-metal development, RTOS environments, fixed-point arithmetic, interrupt-driven architectures, unit testing, and hardware-in-the-loop (HIL) validation.
  • Expertise in power control algorithms and digital control design, including PWM generation, current and voltage control loops, filters, observers, and stability analysis.
  • Experience with communication interfaces and protocols such as I2C, SPI, CAN, Modbus, or similar technologies.
  • Strong electrical engineering fundamentals, including schematic interpretation, hardware interface troubleshooting, and familiarity with sensors, gate drivers, protection circuits, EMC, thermal considerations, and safe system bring-up.
  • Proficiency with laboratory equipment such as oscilloscopes, power analyzers, electronic loads, and high-power test systems.

<>Preferred Qualifications

  • Familiarity with software quality and compliance standards such as MISRA, ISO 26262, CMMI, ASPICE, or UL 1998.
  • Experience implementing secure bootloaders, over-the-air (OTA) update mechanisms, cryptographic signing, and encryption technologies.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.dice.com

Good distractions

Talks and stories from around this role β€” technically off-topic, practically not.

2:19 min

Orchestrating over-the-air firmware updates for vehicle modules

Denis Grahovac Β· WWC 2021

1:11 min

Running high-performance edge computing on bare metal servers

Josip Stuhli Josip Stuhli Β· Coffee With Developers

3:20 min

Certifying safety-critical automotive software and deploying progressive testing strategies

David Romić · WWC 2023

2:13 min

Evaluating Rust for modernizing embedded C firmware

Michael Friedrich Michael Friedrich Β· WWC Europe 2026

2:20 min

Utilizing custom firmware for variable torque manipulation

Daniel Meilak Daniel Meilak +1 Β· WWC Europe 2026

4:24 min

Evaluating bare metal versus cloud computing costs

Jens Happe Jens Happe Β· LIVE

Videos

See all

Related articles

See all