Engineer I (Software Validation, AD/ADAS) – 44910

Description

General Responsibilities:
The primary responsibility of this position is to test advanced driver assistance system (ADAS) ECU software, specifically low level driver software (a.k.a BSW or basic software) developed for 32-bit single and multi-core microcontrollers. The engineer will be enrolled in the company’s Engineering Development Program, a professional development and mentoring program that includes a mix of on the job training in fundamental engineering skills, reliability testing, ECU manufacturing, plus product test & validation assignments for mass production intent ECU programs.

Job Responsibilities:
This position will be required to work directly with project teams in Farmington Hills Michigan, Kentucky, and Japan to support the testing and validation of the embedded software delivered to the customer. The engineer will follow a standard corporate software development process to produce high quality software artifacts. The engineer will analyze requirements, write software test specifications, develop & debug special test code, write software validation test plans, and execute software validation test plans, while maintaining proper version control and configuration management.

The specific responsibilities of the Software Design Engineer shall include (but shall not be limited to) the following:

  • Analyze ECU requirements specifications, identify software requirements, and develop a software requirements matrix to show traceability to test cases.
  • Write software test specifications using a UML modeling tool. Assist in software test and validation reviews.
  • Develop C and assembly code, make files, linker command files, and any necessary build scripts or batch files for special test code. Use debugger tools to flash ECU and debug software on a HIL bench.
  • Perform unit testing and integration testing on a HIL bench to verify software against the software design specifications.
  • Exercise version control by checking in and out of a source code repository, and follow department policies for maintaining trunk and branch integrity. Follow department policies for change control to manage software change requests and maintain traceability.
  • Write software validation test plans, execute software validation procedures, and generate reports to show validation status.

Qualifications

  • Possess a bachelor degree in Electrical Engineering, Computer Science Engineering or a related technical area.
  • Be proficient in software programming languages such as assembly, C or other high level languages.
  • Capable of reading schematics and circuit diagrams.
  • Some experience with debuggers.
  • Knowledge of electronic control systems, including sensor inputs and actuator outputs.
  • Knowledge of embedded systems, embedded software, microcontrollers.
  • Knowledge of software test and validation methodologies is a plus.
  • Knowledge of CAN communication is a plus.

Travel Requirements

  • Candidate will perform initial 6 mo. in design engineering and introductory training at the design and technical center in Farmington Hills, MI.
  • Candidate will relocate and perform an additional 6 mo. training period at Kentucky or Georgia manufacturing plants.
  • Candidate must be open to potential relocation assignments overseas.