Embedded Software Engineer – Power Electronics
At Redwood Materials, we are moving beyond battery recycling to build the most advanced, circular energy ecosystem on the planet. Our goal is to move the industry away from static, hardware‑heavy infrastructure toward agile, software‑controlled energy assets.
While others build “black box” hardware, we are building software‑defined power systems. Our Embedded Software team is responsible for the intelligence that drives our power stages, ensuring our energy storage solutions are safe, efficient, and capable of stabilizing the world’s most demanding grids.
As an Embedded Software Engineer, you will be the architect of the real‑time firmware that drives our power conversion units. You will live at the intersection of silicon and power, writing the low‑level code that controls high‑speed switching, manages thermal safety, and communicates with the broader site infrastructure. You will be responsible for bringing new products from white‑space R&D to global scale, ensuring our code is as resilient as the hardware it controls.
Responsibilities
- Real‑Time Control Firmware: Design and implement bare‑metal software applications for power electronics, focusing on high‑resolution PWM generation, ADC synchronization, and complex timing logic.
- Low‑Level Architecture: Develop and optimize drivers for microcontroller peripherals (SPI, CAN, Ethernet) and architect memory‑efficient, multi‑core processing strategies for real‑time targets.
- Hardware‑Software Synergy: Collaborate with power electronics controls engineers to translate control theory into deterministic, high‑performance code running on Cortex‑R and Cortex‑M architectures.
- Modern Build & Test: Maintain robust software build procedures and scripts. Write highly testable code and integrate it into a modern CI/CD pipeline to ensure every line of code is validated before it hits the lab.
- System Optimization: Profile and optimize code across multi‑core environments, ensuring maximum task efficiency and minimal latency in time‑critical control loops.
- Product Scaling: Leverage a proven track record to take embedded systems from initial prototype to mass‑market production, maintaining high standards for code quality and reliability.
Desired Qualifications
- Background: A BS or MS in Electrical Engineering, Computer Engineering, or Computer Science, combined with 2+ years of experience in firmware engineering and a proven track record of shipping new products at scale.
- Embedded Mastery: Expert proficiency in Rust or C with deep experience debugging complex embedded systems using oscilloscopes, logic analyzers, and JTAG/SWD debuggers.
- Silicon Expertise: Extensive experience with ARM Cortex‑M and Cortex‑R architectures, including low‑level system architecture, multi‑core memory optimization, and bare‑metal task management.
- Power Electronics Literacy: A deep understanding of power‑specific software requirements, specifically high‑speed ADC sampling, high‑resolution PWMs, and hardware timers.
- Safety‑Critical Development: A safety‑centered mindset with experience implementing functional isolation and ensuring freedom from interference (FFI) in complex, multi‑core software environments. Familiarity with UL certification standards for energy storage systems is a significant plus.
- Communication Protocols: Practical experience with digital protocols such as I2C, UART, SPI, CAN/CAN‑FD, and Ethernet. Familiarity with reverse‑engineering CAN protocols or developing custom evaluation tools is a significant plus.
- Infrastructure & Automation: Knowledge of software build systems and the ability to maintain build scripts (e.g., Make, CMake). Experience with test automation and CI/CD is essential.
- Bonus Qualifications: Experience developing bootloaders, implementing secure boot, or profiling code on real‑time, multi‑core targets.
California Pay Range: $137,500 - $227,500 USD
The position is full‑time. Compensation will be commensurate with experience.