> Markdown version of [/jobs/ext/2788170-embedded-controls-software-engineer](https://www.wearedevelopers.com/jobs/ext/2788170-embedded-controls-software-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Embedded Controls Software Engineer - **Company:** Apex Systems LLC - **Location:** Allen Park, MI, United States - **Experience:** Experienced - **Salary:** $83,200.0 - $135,200.0 - **Contract:** Temporary contract - **Skills:** Algorithm Design, Unit Testing, AUTomotive Open System Architecture (AUTOSAR), C++ (Programming Language), Cloud Computing, Static Program Analysis, Code Generation, Communications Protocols, Software Debugging, Embedded Software, Hardware-In-The-Loop Simulation, Python (Programming Language), MATLAB, Language Modeling, Regression Testing, Release Management, ISO/IEC 15504, Simulink, Software Engineering, Stateflow, System Software, Systems Integration, Strategies of Testing, Scripting, Software Modules, Real Time Systems, Google Test, State Machines, Reliability of Systems, Integration Tests, Information Technology, Canoe Software, Programming Languages - **Published:** September 8, 2026 - **Apply:** https://jobs.mitalent.org/job-seeker/job-details/JobCode/406995216 ## About the Role Candidate should demonstrate hands-on experience using MATLAB/Simulink (including Stateflow) to model, design, and simulate embedded control algorithms for BCM features. Example: Building a Simulink state machine to model a vehicle lighting or door control feature, running Model-in-the-Loop (MIL) simulations to validate logic, and using Model Advisor checks to ensure modeling standards compliance prior to code generation. 2. Coding Candidate should be able to write clean, efficient, and standards-compliant code for embedded automotive applications, including scripting for automation. Example: Developing a Python automation script to parse test logs and automatically generate pass/fail reports, reducing manual validation time during regression testing cycles. 3. C++ Candidate should demonstrate proficiency writing and debugging C/C++ code for real-time, resource-constrained embedded targets, including implementing AUTOSAR software components. Example: Implementing a C++ AUTOSAR Software Component (SWC) for a BCM feature (e.g., power window control), integrating it through DaVinci Developer, and validating memory and timing constraints on target hardware. 4. Embedded Software Candidate should demonstrate the full lifecycle of embedded software development, from requirements through implementation and on-target validation, for safety-critical automotive systems. Example: Taking a system-level requirement for a new BCM feature, translating it into a functional specification, implementing the control logic, and validating it through SIL/HIL testing using Vector CANoe prior to production release. 5. Embedded Systems Candidate should understand hardware/software interaction, real-time constraints, and communication protocols (CAN/LIN) governing embedded automotive systems. Example: Diagnosing a field issue where a BCM module intermittently fails to respond over CAN, performing root cause analysis using CANoe traces and the MULTI debugger, and implementing a fix that accounts for timing and interrupt behavior on the target ECU. Required Skills * MATLAB * Simulink * Stateflow * C/C++ * Python * Embedded Software Development * Embedded Systems * AUTOSAR * CAN/LIN Communication Protocols * Vector CANoe * DaVinci Developer * MULTI Debugger Experience Required Engineer 3 * Practical experience in two programming languages, or advanced practical experience in one programming language * 6+ years of IT experience * 4+ years of software development experience Education Required * Master's Degree ## Description As an Embedded Controls Software Engineer, you will be a critical contributor to the design, development, and validation of advanced embedded control software for next-generation automotive systems. This specialized role focuses on the Body Control Module (BCM), directly impacting vehicle safety, user experience, and electrification readiness. You will leverage your expertise in controls theory, real-time systems, and embedded architecture to architect, develop, and optimize complex, safety-critical software throughout the entire product lifecycle. The Body Control Software Team is dedicated to creating Body Control Application Software components, developing and enhancing existing software components that integrate with current architectures, as well as next-generation vehicle systems. Join our diverse global team located in Dearborn, Palo Alto, Ottawa, Mexico, Germany, and India to design and develop embedded software in areas related to cloud-based computing, ad-hoc computing, and embedded platforms. Primary Skills Required1. MATLAB, Design, develop, and implement embedded control systems for Body Control Modules (BCM). Perform high-level analysis and design planning for new features supporting scalable production and next-generation Software-Defined Vehicle (SDV) architectures. Requires a strong understanding of software modeling and embedded design principles. Requirements Engineering Partner with cross-functional stakeholders to capture system-level requirements and translate them into detailed functional and technical specifications for control algorithms and software modules, ensuring alignment with vehicle performance and safety objectives. Algorithm Development & Implementation Design, develop, and optimize control algorithms. Implement AUTOSAR-compliant software components using C/C++, MATLAB (Simulink/Stateflow), and Python. Utilize DaVinci Developer for AUTOSAR configuration and integration. Verification, Validation & Testing Lead test strategy development and execution, including: * Model-in-the-Loop (MIL) * Software-in-the-Loop (SIL) * Hardware-in-the-Loop (HIL) * Unit testing * Integration testing (e.g., Google Test) Perform on-target validation using Vector CANoe and the MULTI debugger. Conduct root cause analysis and implement robust corrective actions. Compliance & Quality Assurance Ensure adherence to: * ISO 26262 (Functional Safety) * ASPICE * AUTOSAR Standards Enforce quality practices including static code analysis and Model Advisor reviews to maintain software reliability and quality. Process Optimization & Automation Identify development bottlenecks and implement Python-based automation scripts and reusable model templates to streamline workflows, improve efficiency, and reduce development cycle time. ## Related Videos - [Building a hypercar from scratch](https://www.wearedevelopers.com/videos/607-building-a-hypercar-from-scratch) - [Leveraging Large Language Models for Legacy Code Translation: Challenges and Solutions](https://www.wearedevelopers.com/videos/1157-leveraging-large-language-models-for-legacy-code-translation-challenges-and-solutions) - [JavaScript? No. Java Scripts! - Scripting with Java](https://www.wearedevelopers.com/videos/2094-javascript-no-java-scripts-scripting-with-java) - [Car's are Technology on Wheels - Impact of Software and IT Competence in Automotive](https://www.wearedevelopers.com/videos/780-car-s-are-technology-on-wheels-impact-of-software-and-it-competence-in-automotive) - [Software stack under and over the hood of the fastest accelerating car in the world](https://www.wearedevelopers.com/videos/221-software-stack-under-and-over-the-hood-of-the-fastest-accelerating-car-in-the-world) - [Intermediate Bitcoin Script](https://www.wearedevelopers.com/videos/25-intermediate-bitcoin-script) ## Related Articles - [How software is steering vehicle technology](https://www.wearedevelopers.com/magazine/515-how-software-is-steering-vehicle-technology) - [7 Important Tips That Every Software Developer Should Know](https://www.wearedevelopers.com/magazine/101-7-important-tips-that-every-software-developer-should-know) - [Software Engineer Career: Things You Should Know](https://www.wearedevelopers.com/magazine/143-software-engineer-career-things-you-should-know) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [What is Software Engineering?](https://www.wearedevelopers.com/magazine/289-what-is-software-engineering) - [Quick guide: How to write a Software Developer CV](https://www.wearedevelopers.com/magazine/37-quick-guide-how-to-write-a-software-developer-cv)