| Location | Novi, MI |
Job Description
The Senior Software Design Engineer's main job responsibilities will be developing, optimizing and validating real-time embedded control software for automotive power-electronics products such as DC-DC converters and DC-AC inverters. This senior role combines control-algorithm development, microcontroller configuration and power-stage topology knowledge to deliver efficient, robust and production-ready software, and includes providing technical leadership and mentoring to other engineers.
Job Requirements
Key Responsibilities:
Education and Experience:
Knowledge, Skills and Abilities:
Strong embedded C development and debugging skills; ability to interpret Assembly, compiler output and MCU reference manuals when optimizing real-time performance.
Developing and tuning control algorithms for power-conversion applications.
Configuring MCU peripherals for control applications, including PWM generation, synchronized ADC sampling, timers, interrupts/ISRs, DMA, watchdogs and hardware protection features.
PWM modulation and timing for H-bridge/full-bridge and push-pull topologies, including dead-time management, complementary outputs, synchronization, fault shutdown and safe-state behavior.
Micro-controllers and digital signal controllers such as ARM, Microchip, NXP, Infineon and Texas Instruments.
Measuring and optimizing execution time, interrupt latency, CPU utilization, memory usage and real-time scheduling behavior.
CAN, CAN FD, LIN and UDS communication.
Software configuration management, version control, defect tracking, build and debugging tools.
Electrical circuits, sensors, data acquisition and laboratory equipment such as oscilloscopes, logic analyzers and power analyzers.
Automotive software development standards, such as ASPICE.
Knowledge of the following a plus:
MATLAB/Simulink control-algorithm development, simulation and testing, including integration of model-based functions into production embedded software (highly preferred)
Functional Mock-up Unit (FMU) generation or packaging from MATLAB/Simulink models
Virtualization using virtual ECUs, plant models, simulated networks or software-in-the-loop environments
Layer 3 (L3) application software development (control functions, state machines, operating modes, fault handling, diagnostics and calibration)
Automatic code generation and model/software/processor-in-the-loop (MIL/SIL/PIL) workflows
AUTOSAR, functional safety/ISO 26262 and cybersecurity/ISO/SAE 21434
Proficient in MS Office (Word, Excel, PowerPoint and Outlook).
Must possess excellent organizational skills, communication proficiency, capable decision making, and problem solving/analysis.
Ability to lead technical work, evaluate design alternatives, communicate trade-offs, mentor engineers and drive issues to closure.
Must maintain a professional and cooperative demeanor.
Must be reliable, self-directed and capable of working independently, with the ability to work on numerous projects simultaneously and use sound judgment in prioritizing tasks to meet deadlines.
Proactive, team-oriented person who can anticipate needs, take initiative with excellent follow-through and require little direction or supervision.
How To Apply
Click on the Apply for this job button below.
More Information