Job Title Embedded Software Engineer (Engineer 3 level), listed in the requisition as “Software Engineer (3) - Core Engineer 3”
Location: Dearborn / Allen Park, MI (Ford IT HQ-C, Fairlane Circle area)
Work model: Hybrid, 4 days onsite per week
Duration: Approximately 12 months
Role Overview
This is a hands-on embedded engineering role for someone who writes, debugs, and validates low-level software that runs on real hardware. The engineer will turn system and software requirements into Embedded C code and MATLAB/Simulink models, then prove it works through unit, integration, and hardware-in-the-loop testing. Day to day, they will work with hardware, controls, systems, and test teams to track down root causes and ship reliable releases. The combination of Embedded C + MATLAB/Simulink + embedded testing is the hard-to-find core of this search, and the customer has been explicit that general software, web, or pure QA backgrounds are not a fit.
Key Responsibilities
- Design, write, debug, integrate, and maintain Embedded C software for hardware-connected applications
- Build and maintain MATLAB/Simulink models and algorithms driven by system and software requirements
- Convert system, functional, and software requirements into embedded designs and working algorithms
- Run unit, integration, and system-level testing, including HIL test scenarios, and analyze the results
- Perform low-level debugging across software, hardware, and integration problems
- Develop and troubleshoot CAN and LIN communication software and support diagnostics and NVM functionality
- Perform root-cause analysis on test failures and implement fixes
- Partner with hardware, systems, controls, software, and test engineers, and support requirements traceability, test planning, defect tracking, and release activities
Required Qualifications
Experience:
- 4+ years of hands-on embedded software development
- 6+ years of overall IT experience, consistent with Engineer 3 level
- Demonstrated unit and integration testing of embedded software
- Experience debugging embedded software and investigating low-level issues
- Experience translating system and technical requirements into designs, algorithms, and implementation
- Practical experience in at least one additional programming language, or advanced proficiency in a primary language
- Bachelor’s degree in Computer Engineering, Electrical Engineering, Computer Science, Software Engineering, or a related technical field
Technical Skills:
- Embedded C (strong, hands-on) (hard to find in combination with the items below)
- MATLAB/Simulink development, modeling, or algorithm implementation (hard to find)
- Embedded software testing (unit and integration)
- Low-level embedded debugging
- Algorithm development and implementation
Preferred Qualifications
- Master’s degree in Electrical Engineering, Computer Engineering, Computer Science, Software Engineering, Controls Engineering, or a related field
- Hardware-in-the-loop (HIL) testing and hardware/software integration
- Automotive embedded systems experience
- CAN and LIN protocols
- Requirements management and traceability
- Embedded test automation
- Debugging with embedded and low-level development tools
- Direct collaboration with hardware, controls, systems, and test teams
- MATLAB/Simulink-based algorithm development and validation
- AUTOSAR (adjacent)
- MISRA C compliance (adjacent)
- dSPACE or similar HIL platforms (adjacent)