Application Software Engineer
Description
We are looking for an Application Software Engineer to develop the high-level control logic and estimation algorithms for our Battery Management Systems. You will be responsible for the "brain" of the battery, translating complex electrochemical requirements into robust, safety-critical software models and code.
Duties and Responsibilities:
1. Algorithm Development: Design and implement core BMS algorithms, including State of Charge (SoC), State of Health (SoH), and State of Power (SoP).
2. Control Logic: Develop application-layer logic for cell balancing, thermal management, and high-voltage contactor control.
3. Model-Based Design: Utilize MATLAB/Simulink to create functional models and perform MIL/SIL (Model/Software-in-the-Loop) testing.
4. Auto-coding: Generate and integrate C-code from models into the embedded environment, ensuring compatibility with the underlying RTOS or AUTOSAR stack.
5. Fault Management: Define and implement diagnostic trouble codes (DTCs) and complex error-handling strategies to ensure system safety.
6. Validation: Collaborate with test engineers to validate application behavior against battery cell data and real-world drive cycles.
