# BMS Software Development Engineer

**Company**: Ford Motor Company
**Location**: Dearborn, MI
**Work arrangement**: hybrid
**Experience**: senior
**Job type**: full-time
**Salary**: $86,600-$144,900 or $99,100-$166,200
**Category**: Engineering
**Industry**: Automotive
**Wikidata**: https://www.wikidata.org/wiki/Q44294

**Apply**: https://efds.fa.em5.oraclecloud.com/hcmUI/CandidateExperience/en/sites/CX_1/job/69288?utm_source=yubhub.co&utm_medium=jobs_feed&utm_campaign=apply
**Canonical**: https://yubhub.co/jobs/job_57fc6009-6bc

## Description

Our advanced energy team at Ford Motor Company is seeking a BMS Software Development Engineer to help establish the foundation for our product execution, safety strategy, and vehicle readiness.

The successful candidate will develop the application-layer control software that determines how a high-voltage battery system behaves, including operating states, high-voltage sequencing, protection, limits, thermal control, diagnostics, and coordination across multiple strings.

Responsibilities:

- Develop and own operating state machines and mode management, including supervisory coordination across multiple controllers.

- Implement high-voltage sequencing: precharge control and completion verification, contactor activation and deactivation, contactor diagnostics including welded and open contact detection, and interlock handling.

- Implement protection strategy: cell and pack overvoltage and undervoltage, overcurrent, overtemperature and undertemperature, isolation loss, and thermal event detection and response.

- Implement current and power limit calculation and arbitration, including derate strategy and coordination of limits across levels of the system.

- Implement cell balancing demand logic and coordinate balancing behavior across modules and strings.

- Implement thermal management control, including actuation, setpoint strategy, and thermal diagnostics.

- Implement aggregation and consolidation of measured and estimated states for reporting at system level, and fault propagation and annunciation to external systems.

- Own diagnostic strategy: fault detection, debounce, classification, storage, clearing, and reporting.

- Integrate and calibrate estimation models delivered by algorithm engineering; own the calibration parameter set and its documentation.

- Develop application software using model-based development with production code generation, plus hand-written C where appropriate.

- Author software requirements and design documentation traceable to system requirements; support safety and security analyses.

- Support validation debug, root cause analysis, and field issue resolution.

Qualifications:

- Bachelor's degree in Electrical, Computer, Mechatronics, Controls, or Mechanical Engineering.

- 5+ years developing embedded application or control software for electronic control units.

- Model-based development proficiency with production code generation, plus working C ability.

- Demonstrated state machine, sequencing, and diagnostic strategy design on a production program.

- Requirements-driven software development with traceability, unit testing, and code review discipline.

- Comfort working directly with hardware, benches, and instrumentation to debug control behavior.

- Strong written and verbal communication skills.

- Ability and willingness to travel occasionally.

Benefits:

- Immediate medical, dental, vision and prescription drug coverage

- Flexible family care days, paid parental leave, new parent ramp-up programs, subsidized back-up child care and more

- Family building benefits including adoption and surrogacy expense reimbursement, fertility treatments, and more

- Vehicle discount program for employees and family members and management leases

- Tuition assistance

- Established and active employee resource groups

- Paid time off for individual and team community service

- A generous schedule of paid holidays, including the week between Christmas and New Year's Day

- Paid time off and the option to purchase additional vacation time.

Salary: $86,600-$144,900 or $99,100-$166,200 depending on the salary grade

## Skills

### Required
- Model-based development
- Embedded C application software
- State machine and mode management design
- High-voltage sequencing and contactor control
- Protection strategy and limit arbitration
- Diagnostic strategy design
- Thermal control strategy
- Balancing demand logic
- Calibration and parameter management
- Requirements traceability and software documentation
- Bench and hardware debug

### Nice to have
- Master's degree in Electrical Engineering, Controls, or a related technical field
- Battery management control software
- High-voltage system experience
- Software development under functional safety process requirements
- Calibration methodology and parameter management for production programs
- Coordination or aggregation logic across distributed controllers
- Thermal management control strategy experience

---

Source: [Apply at efds.fa.em5.oraclecloud.com](https://efds.fa.em5.oraclecloud.com/hcmUI/CandidateExperience/en/sites/CX_1/job/69288?utm_source=yubhub.co&utm_medium=jobs_feed&utm_campaign=apply)
