Key Responsibilities:
Design, develop, and maintain Java-based applications in embedded automotive environments, especially ECU platforms.
Work within resource-constrained microprocessor (μP) environments to deliver efficient, scalable solutions.
Collaborate with cross-functional teams using Agile/SAFe methodologies to deliver high-quality software components.
Write and maintain unit and integration tests using JUnit; set up CI/CD pipelines with Jenkins.
Integrate and troubleshoot automotive communication protocols such as UDS, CAN, and SOME/IP.
Contribute to Linux user-space application development and troubleshooting.
Work with Android lifecycle-aware components when applicable in system-level integration.
Follow ASPICE-compliant development practices.
Support diagnostic software integration, validation, and troubleshooting activities in ECU settings where applicable.
Utilize Atlassian toolchain (Jira, Confluence, Bitbucket) for project and documentation management.
Required Skills:
Strong hands-on experience in Java development,
ideally in embedded or resource-constrained environments.
Good understanding of embedded Java development using Core Java 8 .
Familiarity with logcat for Android logging and debugging.
Experience with JUnit and CI/CD setup using Jenkins.
Basic understanding of Linux user-space development and debugging .
Familiarity with SAFe Agile methodology .
Proficiency with Atlassian tools: Jira, Confluence, Bitbucket .
Preferred Skills:
Experience with CAN and SOME/IP communication protocols.
Exposure to CANoe simulation setting.
Diagnostic background is a robust plus — experience with UDS (ISO 14229), OBD-II, or automotive diagnostic tools (e.g., ETAS INCA, Vector CANalyzer, ODX/PDX-based toolchains).
Familiarity with AUTOSAR Diagnostic Event Manager (Dem) or Diagnostic Communication Manager (Dcm) modules.
Understanding of ECU flash programming and fault memory (DTC) management.
Understanding