Back to results

Propulsion Controls Software Engineer

  • Windsor, ON, Canada

Contract

Applications open in a new tab.

Job details

Job type
Contract
Apply by
Experience
5+ years of professional experience in automotive embedded controls/software development.
Posting language
English
Posted

Original job description

Position Description

Seeking an experienced Propulsion Controls Prototype Software Engineer to support the development, integration, and rapid prototyping of advanced control software for engine control modules and electrified/hybrid propulsion supervisory controllers.

This position will develop prototype embedded software used to evaluate new propulsion technologies in simulation, Hardware-in-the-Loop (HIL), dynamometer, and vehicle environments. The engineer will work across application software, AUTOSAR architecture, communication interfaces, and base/foundation software to quickly translate new controls concepts and requirements into executable ECU software.

The ideal candidate combines strong automotive embedded software development experience with a practical understanding of propulsion controls. They should be comfortable working with both hand-coded embedded C/C++ algorithms and model-based/autocoded MATLAB/Simulink/Stateflow software and should be capable of troubleshooting issues across the boundary between application software, RTE, BSW, CAN communications, ECU hardware interfaces, and calibration.

Key Responsibilities

Develop, modify, integrate, and release prototype embedded control software for engine controllers and hybrid/electrified propulsion supervisory controllers.

Translate control concepts, models, functional requirements, and experimental algorithms into executable embedded software.

Develop software using both:

Hand-coded C/C++

MATLAB/Simulink/Stateflow model-based development and autocoding

Modify existing Simulink models and supporting artifacts such as data dictionaries and prepare models for prototype software implementation.

Develop and integrate software within an AUTOSAR-based embedded architecture, including understanding of Software Components, ports/interfaces, internal behavior, runnables, compositions, ARXML, variant management, and RTE generation.

Use SystemDesk for AUTOSAR application architecture/modeling and ARXML-related development.

Configure, generate, integrate, and troubleshoot the AUTOSAR Runtime Environment (RTE) using tools such as Vector DaVinci and ETAS ISOLAR

Develop and integrate CAN communication interfaces, signals and messages.

Work with CAN database/comm artifacts, including DBC/LDF-based interfaces where applicable.

Understand the interactions among Application Software (ASW), RTE, Basic Software (BSW), device drivers, and ECU hardware.

Integrate and troubleshoot BSW/foundation software, including configuration and interfaces required to support application software.

Execute the embedded software build process and manage development branches using Git/version-control workflows.

Perform ECU software integration including compilation, linking, memory/configuration troubleshooting, and generation of software artifacts required for calibration and testing.

Support MIL, HIL, dyno, and vehicle software checkout and validation, including rapid root-cause analysis of software, communications, calibration, and integration issues.

Basic Qualifications

Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, Mechanical Engineering, or a closely related engineering discipline.

5+ years of professional experience in automotive embedded controls/software development.

Strong embedded programming skills in C/C++.

Demonstrated experience developing software for automotive ECUs or comparable real-time embedded systems.

Strong working knowledge of MATLAB, Simulink, and Stateflow.

Experience with both hand-coded and model-based/autocoded embedded software development.

Practical experience with AUTOSAR Classic application software architecture and integration.

Experience with SystemDesk, ARXML, AUTOSAR SWCs, ports/interfaces, runnables, compositions, ECU extracts, and RTE generation/configuration.

Experience with Vector DaVinci and/or ETAS ISOLAR for AUTOSAR configuration/development.

Strong understanding of automotive CAN communications, signals, messages, CAN databases, and ECU network integration.

Familiarity with Git or similar professional configuration-management/version-control systems.

Experience debugging embedded software across ASW/RTE/BSW interfaces.

Experience with automotive calibration, measurement, and debugging tools such as ETAS INCA or equivalent

Strong debugging and root-cause analysis skills with the ability to solve problems spanning controls algorithms, embedded implementation, communications, cal, and ECU integration.

Demonstrated ability to work effectively in a fast-paced prototype/R&D environment with controls, software, calibration, validation, and hardware engineers.

Preferred Qualifications

8+ years of automotive embedded controls and software experience.

Direct experience developing software for engine control modules (ECM/PCM), hybrid control modules, vehicle control units, or propulsion supervisory controllers.

Strong understanding of powertrain/propulsion controls, including torque coordination, engine management, energy management, diagnostics, communications, or hybrid supervisory control.

Hands-on AUTOSAR BSW/foundation software experience, including BSW configuration, RTE configuration, application integration, middleware/SWC interfaces, NVM, diagnostics, communications, or complex device drivers.

Experience debugging ECU software at the microcontroller/driver/application boundary.

More about this job

Responsibilities

Develop, integrate, and release prototype embedded software for engine and hybrid/electrified propulsion controllers using hand-coded C/C++ and MATLAB/Simulink/Stateflow. Configure and troubleshoot AUTOSAR application software, RTE, BSW, CAN interfaces, and ECU builds, and support software validation in MIL, HIL, dynamometer, and vehicle environments.

Requirements

Requires a bachelor's degree in a relevant engineering or computer science discipline and at least five years of automotive embedded controls or software experience. Candidates need strong C/C++, MATLAB/Simulink/Stateflow, AUTOSAR Classic, CAN, ECU integration, calibration, and debugging experience; propulsion controls and BSW expertise are preferred.

Skills

  • Embedded C/C++
  • Automotive Controls Software
  • MATLAB
  • Simulink
  • Stateflow
  • AUTOSAR Classic
  • SystemDesk
  • ARXML
  • Vector DaVinci
  • ETAS ISOLAR
  • CAN Communications
  • RTE and BSW Integration
  • Git
  • ECU Integration and Debugging
  • Automotive Calibration
  • Propulsion Controls

Visa sponsorship

Not detected in the job text

Categories

  • Engineering
  • Software
  • Technology
  • Manufacturing

Keywords

  • Automotive Embedded Software
  • Propulsion Controls
  • Engine Control Module
  • Hybrid Propulsion
  • Electrified Propulsion
  • Embedded C/C++
  • MATLAB
  • Simulink
  • Stateflow
  • Model-Based Development
  • AUTOSAR Classic
  • SystemDesk
  • ARXML
  • Software Components
  • RTE Generation
  • Vector DaVinci
  • ETAS ISOLAR
  • Basic Software
  • CAN Communications
  • DBC
  • LDF
  • Git
  • ECU Integration
  • ETAS INCA
  • Calibration
  • Hardware-in-the-Loop
  • Dynamometer Testing
  • Vehicle Validation
  • Root-Cause Analysis
  • Real-Time Embedded Systems

Report this job