Overview
Embedded Software Developer for automotive ECU applications, focused on Embedded C development, UDS and CAN diagnostics, and validation of embedded software components.
What you'll do
- Develop, integrate, test, and debug embedded software components using Embedded C for automotive ECU applications.
- Implement and maintain automotive diagnostic functionality based on UDS (ISO 14229) and related diagnostic concepts.
- Work with CAN and ISO-TP (ISO 15765) communication for diagnostic data exchange between tester and ECU.
- Develop and debug diagnostic services such as Diagnostic Session Control (0x10), ECU Reset (0x11), Security Access (0x27), Communication Control (0x28), Read/Write Data by Identifier (0x22/0x2E), Routine Control (0x31), Request Download/Transfer Data (0x34/0x36), and DTC services (0x14/0x19).
- Analyze and troubleshoot issues using debuggers, CAN analyzers, trace logs, and diagnostic tools.
- Perform unit testing, integration testing, functional testing, and diagnostic validation of embedded software.
- Analyze software requirements and contribute to software design, implementation, and technical documentation.
- Investigate defects, perform root-cause analysis, and implement corrective actions.
- Support integration of diagnostic software with CAN stacks, transport protocol, bootloader, application software, and other ECU components.
- Work with automotive development and quality processes such as coding guidelines and defect-management processes.
- Collaborate with architects, technical leads, testers, and customers to resolve technical issues and clarify requirements.
- Support software release activities, including build generation, integration, testing, and release documentation.
What you'll need
- 3–5 years of experience in Embedded Software Development, preferably in the Automotive domain.
- Strong programming skills in Embedded C.
- Good understanding of pointers, structures, unions, function pointers, memory management, bit manipulation, interrupts and timers, embedded programming concepts, and microcontroller peripherals.
- Good knowledge of automotive communication protocols, particularly CAN, ISO-TP / ISO 15765, and UDS / ISO 14229.
- Hands-on understanding of automotive diagnostic concepts and UDS services.
- Experience in implementing, integrating, testing, or debugging ECU diagnostic functionality.
- Experience with diagnostic and CAN tools such as CANoe, CANalyzer, CANape, or equivalent tools.
- Good debugging and troubleshooting skills using debuggers, logs, CAN traces, and test tools.
- Experience with Git/SVN or other version-control systems.
- Good analytical, problem-solving, communication, and documentation skills.
- Bachelor's or Master's degree in Electronics, Electrical Engineering, or related field.
Nice to have
- Familiarity with MISRA C and static-analysis tools.
- Knowledge of Bootloader, ECU flashing, and programming services.
- Experience on J1939, ISO15031, J1979, KWP200 protocols.
- Understanding of CMMI and ASPICE processes.
- Knowledge of bootloaders and firmware update mechanisms.
- Requirement management tools such as Codebeamer or DOORS.
Details
Read the full description and apply on the company’s own careers page.