Senior Software Developer - Virtualization and SIL Integration
Job Description
Work Classification:
Hybrid: This role is categorized as hybrid. This means the successful candidate is expected to report to Milford or Warren, Michigan three times per week, at minimum.
The Role:
We are currently looking for experienced and motivated candidates for the role of Virtualization and Software-in-the-Loop (SIL) Integration Engineer to support our Test Environment Agile Release Train (SIL ART).
This role is part of a group responsible for creating virtual in-the-loop environments to enable development, verification and validation of embedded controllers and calibrations for the following domains:
- Propulsion Thermal Management System
- Battery Management System
- Chassis and Brake Controls
- Body Electronics and Controls including vehicle access, occupant comfort, occupant protection, lighting, visibility and vehicle State
The Software-in-the-Loop (SIL) Simulation Integration Engineers (SIE) are ultimately responsible to deliver a quality simulation environment on time to meet the customers’ requirements. This position requires an individual with a passion for modeling, an adept knowledge of system simulation and integration, and demonstrated capability for managing a wide variety of technical and customer needs.
What You'll Do (Responsibilities) :
- Lead the development and integration of cosimulation components to satisfy the end user test requirements.
- Create virtual controller models to be used across different simulations
- Create, maintain and test virtual controller components such as HWIO, RTOS, communication models, etc.
- Obtain, develop & parameterize sub-system models, such as sensors and actuators, and ECU behavioral models
- Work with development engineers to understand new feature requirements, address issues, and ensure proper implementation
- Work with System Engineers to define SIMBOMs (the required cosimulation assets) based on the test requirements.
- Integrate Plant models and other ECU models into a dynamic virtual simulation
- Create and maintain detailed documents for each release
- Provide support for released simulations and assist with user testing and troubleshooting
- Provide technical support and guidance to other team members
- Ensure the cosimulation environments are delivered with quality
- Support cloud deployments
Your Skills & Abilities (Qualifications):
- Bachelor of Science degree in one of the following disciplines: Engineering, Computer Science or related fields
- 5+ years of software engineering experience
- Proficient in Embedded C, Python. Matlab & Simulink.
- Competent with embedded controls software and the automated software build processes including gcc compiler, gdb debugger, Eclipse, Jenkins.
- Proficient in automotive communication technologies such as CAN, LIN, SPI and automotive ethernet.
What Can Give You A Competitive Edge ( Preferred Qualifications):
- Master’s degree in a field of Engineering, Computer Science or related fields
- 8+ years of embedded software development experience
- Experience in virtualization or software integration
- Experience in designing and developing vehicle body controls, propulsion thermal, battery management, chassis and brake controls software
- Familiar with FMU/FMI standards and SSP.
- Familiar with AUTOSAR Layered Software Architecture.
- Adept experience with MATLAB and Simulink in context of plant model development and integration and basic usage of additional simulation tools (e.g. GT-Power, AMESIM, CarSim) and ETAS INCA tools.
Benefits:
Benefits: GM offers a variety of health and wellbeing benefit programs. Benefit options include medical, dental, vision, Health Savings Account, Flexible Spending Accounts, retirement savings plan, sickness and accident benefits, life insurance, paid vacation & holidays, tuition assistance programs, employee assistance program, GM vehicle discounts and more.
Relocation :
This job may be eligible for relocation benefits.