Sr. SW Design Engineer (ADAS)-43025

Description

General Responsibilities:
The Sr. Software Design Engineer is primarily responsible for developing software component design specifications, based on the software architecture design specification. The software component design specifications are the deliverable to the software coders, so they are very detailed – specifying the static structure and the dynamic behavior of the software component.

The engineer will monitor the work of the software coders and testers, providing direction and clarification as needed. Participate or lead code reviews, unit test reviews, and functional/integration test reviews.

The engineer will follow the lead of a Software Architect, and may support the architect in parsing customer requirements, developing sub-sections of a software requirements specification or developing sub-sections of a software architecture specification.

Job Responsibilities:
Includes the following (other duties may be documented and assigned by local management and some duties may not apply dependent upon the requirements of the position at each specific (HIAMS)AM site and/or the strengths of the employee and the needs of the company):

  • Develop software component design specifications
  • Develop software unit test specifications
  • Lead software design reviews
  • Conduct technical impact analysis for software change requests
  • Identify technical risks in the design, and develop mitigation strategies
  • Monitor software coders work progress; develop source code as necessary to maintain program timelines
  • Participate or lead code reviews, unit test reviews, and integration test reviews
  • Support development of software requirements specification (SRS) and software architecture specification sub-sections, if needed by the software architect
  • Support development of integration test specification sub-sections, if needed by the software architect
  • Support source code integration, diff, merge, branching, check-in, etc., if needed by the software coders
  • Support unit test and integration test execution, if needed by the software testers

Qualifications

  • Bachelor of Science Degree in Computer Science or Electrical Engineering
  • 7+ years’ experience in writing embedded software in C with knowledge of Eclipse IDE or similar preferred
  • Microcontrollers. 32-bit automotive multi-core micros. Renesas E2x/RH850 family; Infineon Aurix TCxx family; NXP MPC55xx family.
  • Microcontroller Hardware. Timers (GTM,TPU,WDT), Memory (RAM, FLASH, ECC, DMA), Peripherals (ADC,PWM,GPIO,CAN,SENT,UART,LIN,SPI), Safety (SMU, FCCU), etc.
  • Hardware IC Devices. High side drivers, low side drivers, H-Bridge, injection drivers, knock drivers, solenoid drivers, WRAF drivers, CAN Transceivers, etc.
  • Software Design Tools. Requirements modeling, UML modeling, AUTOSAR configuration, RTOS configuration, Application Lifecycle Management (ALM).
  • Software Development Tools. Cross compilers, static code analysis, in-circuit debuggers, serial communication tools, HIL systems, measurement & calibration tools.
  • Test Equipment. Oscilloscope, multimeter, logic analyzer, current probes, function generator, etc.
  • Software Process/Standards. V-Model, MISRA, ASPICE, ISO26262
  • Communication Protocols. CAN, CANFD, LIN, SENT, Ethernet. UDS, GMLAN, FNOS, J1939, IEEE15765.
  • Application Domains. Chasis Suspension Controllers, Basic Software (BSW)
  • Software Architecture. Basic Software, Low Level Drivers, Board Support Package, Boot Code, BIOS, MCAL
  • Familiar with crypto algorithms, and cryptographic authentication method
  • Ability to read schematics, electrical block diagrams, and IC datasheets
  • Good verbal and written English skills