Embedded Software Engineer Job Description
About the Role
We are seeking a skilled Embedded Software Engineer to join our team and contribute to the development of automated and autonomous control application software using C in an embedded environment. The ideal candidate will have experience working in automotive or similar industries, with advanced knowledge of Embedded Linux Controller Application development and Embedded C.
Main Responsibilities
* Support and share technical guidance to the team, coaching in technical topics and providing direction for task delivery
* Engage directly in technical discussions with stakeholders and customers
* Develop software according to corporate guidelines and techniques
* Maintain high-quality design through testing and verification methods
* Create and maintain documentation
* Discuss approach, activities, risks, and issues proactively with customers and project stakeholders
Required Skills and Qualifications
The successful candidate will possess the following skills and qualifications:
* 7+ years of experience in automotive or similar industries in embedded software development
* Advanced experience in Embedded Linux Controller Application development with Embedded C
* Intermediate to Advanced experience working under ROS2 systems (Linux Jazzy/humble)
* Basic to Intermediate experience with Communication Protocols (J1939,CAN, CAN2B, CANFD)
* Knowledge/ basic experience with MQTT, ETH
* Experience with Configuration and Change Management tools (e.g. Git, GitHub)
* Able to translate and breakdown system requirements into features
* Solid experience in embedded system architectures, Microcontrollers, Embedded C/C++, compilers, and developer environment
* Advance Software Development Process Knowledge and experience
* Experience with agile methodologies (SAFe)
Benefits
The benefits of this role include:
* C1 English level
* Ability to travel to the US
Desirable Skills
The following skills are desirable but not essential:
* Knowledge/ basic experience with other programming languages (Python/C++)
* Experience with Behavioral tree design
* Experience with Gazebo
* Knowledge in safety-related processes (ISO26262)
* Knowledge in security-related processes (ISO21434)
* Requirements engineering
* Strong knowledge about Quality assurance, Software release procedures and capability models (e.g. ASPICE, CMMI)
* Experience Working with diagnostics (UDS ISO 14229, SAEJ1939)