
Software Engineer - Automotive Connectivity & Data (35700-MKAI)
- Novi, MI
- Permanent
- Full-time
- Design, develop, and maintain software interfaces for automotive standards, file formats, and communication protocols.
- Build user-facing components including command-line interfaces, Simulink block libraries, and graphical user interfaces (GUI).
- Collaborate with customers and internal teams to gather requirements, define use cases, and validate solutions.
- Own and drive development projects through all stages of the software lifecycle using agile methodologies.
- Apply object-oriented design principles and C/C++ best practices to build scalable, maintainable code.
- Champion software quality through test-driven development, automated testing, and continuous integration.
- Stay current with emerging automotive technologies.
- BS or MS in Computer Science, Computer Engineering, Electrical Engineering, or related field
- Strong programming skills in C/C++ and object-oriented design, with experience integrating third-party libraries
- Solid understanding of automotive communication protocols (CAN, LIN, Automotive Ethernet, etc.)
- Expertise with AUTOSAR (Classic or Adaptive), with emphasis on the COM stack
- Familiarity with ECU development and testing workflows, including SIL (Software-In-the-Loop) and HIL (Hardware-in-the-Loop)
- Exposure to diagnostic protocols (UDS, OBD-II), file formats (MDF, BLF, A2L), and service-oriented communication architectures (SOME/IP, DDS)
- Experience using MATLAB/Simulink