Similar Jobs

View More

Software Developer

This job is no longer active. View similar jobs.

POST DATE 8/9/2016
END DATE 12/19/2016

Movement Troy, MI

Troy, MI
AJE Ref #
Job Classification
Full Time
Job Type
Company Ref #



1. Automotive Embedded Background

2. Tools:

a. Developer: Tools: CAN, Lauterbach Debugger, MATLAB/Simulink, Microcontrollers, Configuration Management, Change Management

b. Validation : dSPACE, NI, HIL, Python (preferred)

3. C language

4. Powertrain, Engine, Transmission, Brakes, Safety, (no Infotainment), no consumer electronics


The Embedded Software Development Engineer reports to the Software Systems Engineering Manager, and works in a cross-functional development group supporting the Battery Management System (BMS) software for multiple customers in both automotive and non-automotive markets.

The BMS platform is in production use on multiple global OEM Hybrid Electric Vehicles (HEV), Plug-In Hybrid Electric Vehicles (PHEV) and pure Battery Electric Vehicles (BEV).

The Embedded Software Development Engineer will work directly on architecture, design, development and testing of existing and new BMS functionality in the areas of diagnostics, battery cell and pack monitoring, thermal control and more. In this dynamic and demanding environment, your responsibilities will be varied, but always focused on delivering value to customer projects while working closely with many other parts of our engineering organization. The pace of work is fast and it is important to be able to work effectively and deliver on commitments. There will be opportunities to learn new skills, mentor others, and develop s/w solutions and architecture using the latest tools and technologies while working on the automotive industry's highest profile vehicle electrification projects.


The Software Engineer has sufficient skills and experience to execute best practice software design, verification and analysis during system development or redeployment.

Specific responsibilities at the Software Developer level include:

Takes direction from the Software Technical Lead.

Primary responsibility for one or more modules of the Battery Management System software.

Responsible for code construction, static analysis, unit testing and peer reviews, and ensuring proper revision control of all work products

Works independently to execute work plans, provide status updates and adjust to changing requirements.

Participates in the Software Change Review Board, including providing input and analysis and joining in the decision making process.

Tracks and analyses software requirements changes. Translates customer requirements into detailed software requirements and design as needed.

Supports Quality, Reliability and Robustness efforts (DFMEA, Fault Tree analysis.)

Support troubleshooting of software issues for both development and production software releases, including troubleshooting software running on electronics hardware, battery packs and vehicles.

Ensures revision management of work products

Supports Software Validation Team in designing appropriate requirements validation.


B.S in Electrical Engineering, Computer Science or equivalent


Excellent verbal and written English

Ability to interface well with internal and external customers

Ability to work independently or as a lead member on a development team

Demonstrated history of delivering quality automotive embedded software products to market

Minimum 3 years embedded software development in C and/or C++

Structured software design and code development methods (e.g. SPICE/CMMI) preferred

Quality & Reliability disciplines (FMEA, 8D, APQP) preferred

Experience with Major automotive microprocessors (Motorola/Freescale, Intel, STMicro) preferred

Automotive network data structures, protocols, (e.g. CAN, GM LAN, FNOS, J1939) desirable

Matlab/Simulink/RTW experience desirable

HV battery systems desirable