
Sr. Software Engineer, ES&D High Voltage
- Irvine, CA Palo Alto, CA
- Permanent
- Full-time
Role SummaryThe Sr. Embedded Software Engineer at Rivian Volkswagen Technologies Group is responsible for implementing and validating embedded software for battery and energy management systems, developing features for both low and high voltage systems such as power distribution, fault detection, and advanced state estimations. The role involves designing scalable, reliable software architectures, writing automated tests, and collaborating with cross-functional teams to ensure safety and compliance with critical standards.
ResponsibilitiesImplement and validate embedded software for battery and energy management systems.Develop one or more of the following features for the low and high voltage systems: power and current distribution, DC/DC and operational state controls, fault detection and recovery, range estimation, battery thermal controls and management, and advanced battery state estimations (e.g. cell balancing, state-of-charge, state-of-health, state-of-power etc.)Lead technical meetings with peers and leadership to review feature design and performance.Lead code reviews and provide technical feedback to drive traceable and high-quality solutions.Guide teams with their test plans to achieve design & validation goals.Design scalable software architectures with a focus on the embedded system reliability and performance.Write automated tests for the software components, using unit, Software/Hardware-in-the-Loop (SIL/HIL).Collaborate with cross-functional teams (i.e. hardware, systems, functional safety, and vehicle integration) to ensure safety, reliability, and standards compliance across low voltage and high voltage systems.
Qualifications
- Bachelors in Electrical Engineering, Computer Science or equivalent engineering or sciences.
- 6+ years’ experience in embedded programming in C or C++
- Proficient in test driven development with developer driven coverage from different test targets (HIL/SIL/Unit).
- 4+ years' experience developing code for low or high voltage components in an integrated system.
- 4+ years' experience designing or developing BMS algorithms or equivalent.
- Experience troubleshooting complex field issues with developer driven field data analytics.
- Experience working with advanced 32-bit multi-core microcontrollers.
- Experience working with CAN, LIN, UDS, DoIP communication interfaces.
- Experience working in a Real-Time Operating Systems (RTOS) environment.
- Strong interpersonal skills.