Firmware Engineer
Enpro Industries, Inc.
Tustin, United States of America
yesterday
Role details
Contract type
Permanent contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
Senior Compensation
$ 165KJob location
Tustin, United States of America
Tech stack
Board Bringup
Build Automation
Automation of Tests
Booting (BIOS)
C Sharp (Programming Language)
C++
Communications Protocols
Databases
Continuous Integration
Software Debugging
Device Drivers
Embedded Software
Firmware
Hardware Interface Design
Hardware-In-The-Loop Simulation
PC Tools
Joint Test Action (IEEE Standards)
Windows Presentation Foundation
Real-Time Operating Systems
RS-232
TCP/IP
Universal Asynchronous Receiver/Transmitter
USB
Windows Desktop
Windows Forms
Data Logging
Diagnostic Tools
Digital Access Carrier System
PIC Microcontroller
iOS
State Machines
Build Server
GIT
Real Time Data
Software Version Control
Job description
The Firmware Engineer will build embedded systems that interface directly with hardware. This role is primarily firmware-focused (low-level, real-time, device-facing), with some supporting PC software work for diagnostic and customer-facing tools. You will be close to the hardware: bringing up new boards, writing drivers, debugging with JTAG and oscilloscopes, and building robust firmware that ships in production and performs reliably in real field environments.
What You'll Do:
- Design, implement, and maintain embedded firmware for ARM-based microcontrollers
- Own features and systems from concept through production release
- Develop device drivers and low-level hardware interfaces
- Build robust firmware architectures (state machines, fault handling, watchdogs, diagnostics, recovery)
- Work in RTOS-based systems with real-time constraints (timing, determinism, DMA, interrupts)
- Support hardware bring-up, including schematic-driven debugging and early prototype validation
- Interface with peripherals including ADCs, DACs, sensors, and communication interfaces
- Debug firmware and hardware issues using JTAG/SWD, oscilloscopes, and logic analyzers
- Develop Windows desktop applications (WinForms/WPF) for diagnostics, calibration, and customer tools
- Build and maintain test systems (unit, integration, regression, hardware-in-the-loop)
- Support production release, including field issue investigation and root cause analysis
- Contribute to CI/CD pipelines, automated builds, and release processes
Requirements
- 7-15 years of embedded firmware experience in hardware-based products
- Strong proficiency in C/C++
- Experience with ARM-based microcontrollers (including Microchip SAM7 or similar)
- Proven experience writing device drivers and working directly with hardware
- RTOS experience (task scheduling, synchronization, interrupts, timing)
- Strong firmware design skills (state machines, error handling, diagnostics, recovery strategies)
- Demonstrated ability to work independently from concept through production-ready implementation
- Hands-on debugging using JTAG/SWD, oscilloscope, and logic analyzer
- Experience with communication protocols: I2C, SPI, USB, UART, RS-232, RS-485
- Experience with DMA and real-time data handling
- Experience using Git or similar version control systems
- Experience developing Windows desktop applications (C#, WinForms or WPF)
- Ability to read schematics and understand electronics fundamentals (ADC, DAC, amplifiers, sensors)
- Experience supporting products in a production environment (ISO 9001 or similar), * Experience with embedded displays or UI frameworks (e.g., LVGL)
- Networking experience (TCP/IP, embedded connectivity)
- Experience with data logging, databases, or diagnostics tools
- Firmware update mechanisms (bootloaders, field upgrades, recovery strategies)
- Experience with sensor-based or measurement systems and calibration methods
- Experience designing for reliability in production and field environments
- Experience building automated test systems or hardware-in-the-loop setups
- Experience with CI/CD systems and build server setup/maintenance
What We're Looking For
- Hands-on, execution-focused engineer who enjoys building, testing, and debugging real systems
- Strong ownership mindset - able to take products from bring-up through production and field support
- Detail-oriented with a focus on reliability, maintainability, and diagnostics
- Comfortable working cross-functionally with electrical, mechanical, and systems teams
About the company
AMI is a subsidiary of Enpro, a leading industrial technology company focused on critical applications across many end-markets, including semiconductor, industrial process, commercial vehicle, sustainable power generation, aerospace, food and pharma, photonics and life sciences.