Firmware Engineer
Enpro Inc. · Tustin, CA · 1 mo ago
Engineering$133k–$165k/yrFull-time
About the Role
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.
Responsibilities
- 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)
Preferred Qualifications
- 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
Pay
$133K–$165K
Location: Tustin, CA