Job Description
Are you looking to work for a company that provides an innovative work environment, and your voice is heard?
We are looking for an Embedded Software Engineer Specialist to work in Southfield.
The Embedded Software Engineer Specialist will be responsible for the following:
Lead embedded software work for self and may lead others, managing requirements to architecture, configuration/generation/implementation, and validation.
Contribute and may lead integration strategy, release schedule and integration test plan following software release plan and supplies release schedule Lead external partners and internal engineering resources on the integration work between ECU device drivers, controls model interface points, service tool drivers and other intelligent embedded systems. Evaluate embedded system level requirements and software algorithm proposals to meet product performance (Processor utilization, memory usage), functionality and robustness requirements.
Help define and improve embedded coding standards, Configuration guidelines and processes, and contribute to industry technical papers and conferences. Develop test procedures to validate and/or characterize software strategy, performance and efficiency in environments such as Hardware In Loop and Processor In Loop.
Co-ordinate with the test labs to execute test plan and acquire data for analysis. Obtain and communicate the needs of plants, OEMs, end users and other functional groups to ensure voice of customer is satisfied in the embedded software design and testing. Build and maintain working relationships with the controls and software engineering organization, other functional groups, and customers. Conduct software defect root-cause analysis, resource profiling, lead implementation and validate corrective actions. Develop and integrate AUTOSAR-compliant embedded software including configuration of BSW modules, RTE generation, and implementation of complex device drivers. Lead system-level validation and interface integration, ensuring robust performance, compliance with safety standards (ISO, ASPICE), and alignment across cross-functional engineering teams.
Education and Skills required to meet position qualifications: Bachelor's degree in electrical and/or Computer Engineering, Computer Science, or relevant degree Minimum of + years' experience C/C++ as well as the software development lifecycle Experience with embedded software development Experience with a variety of CPU architectures and low-level driver for microcontroller peripheral interfaces such as SPI, IC, USB, Client, I/O… etc Experience with BSW/MCAL configuration, RTE generation, and Complex Device Drivers (CDD). understanding of AUTOSAR architecture, ASW and BSW interfaces, apply AUTOSAR standards, and lead integration efforts Familiarity with AUTOSAR stack tools like ETAS, Vector CANape, CANalyzer, and INCA. Formal training or experience with ISO, IEC, and ASPICE compliance. Ability to define and trace functional safety requirements, fault metrics, and safety mechanisms across system levels. Ability to integrate software with target hardware in a lab environment. Experience with Multi-core, Pre-emptive Real-Time Operating Systems System level troubleshooting and associated lab experience Working experience with debugger/trace and Vector/ETAS tools Developing software to MISRA coding standards Experience with Jenkins server and script language a plus Good communication skills with ability to interface directly with external partners, suppliers, and both internal and external customers.
Preferred/Additional Specialized Knowledge (not required to be qualified for position): Bachelor of Science degree in Electrical Engineering, Computer Science, or Computer Engineering from an ABET accredited university. Expertise with Controller Area Networks (, SAE-J, CANOpen, ethernet) Expertise with Vector tools such as CANape and CANalyzer. Project management skills to assess task effort, manage priorities, and report status. Experience with change management and software release processes in a team environment Prior experience working with any of the following: bootloaders, hardware abstraction layer, multi-wire diagnostics, file systems, embedded memory management, AD inputs, interfacing with the MCAL. Working experience with IBM JAZZ a plus The ideal candidate would have experience in, or knowledge of automotive drivetrain/powertrain systems and components Project management skills to assess task effort, manage priorities, and report status. Experience with change management and software release processes in a team environment