**Job Description:**
We are seeking a highly skilled Embedded Software Engineer to join our team. As an embedded software engineer, you will be responsible for designing and developing software applications for automated and autonomous control systems using C in an embedded environment (Linux based). Your primary focus will be on ensuring the quality of the developed software and its documentation.
**Responsibilities:
* Design and develop software applications for automated and autonomous control systems using C in an embedded environment (Linux based)
* Ensure high-quality design supported by testing and verification methods
* Responsible for creation and maintenance of documentation
* Proactively discuss technical matters with customers and project stakeholders about approach, activities, risks, and issues
* Develop software designs that cover related software requirements and respect defined software architectures
* Perform peer reviews to improve implementation quality
* Early validation of feature proposals and re-design as needed
**Required Skills and Qualifications:
To be successful in this role, you should have a strong background in embedded software development, including experience with embedded Linux controller application development, communication protocols, and configuration management tools. Additionally, you should possess excellent problem-solving skills, ability to translate and breakdown system requirements into features, and a solid understanding of embedded system architectures, microcontrollers, compilers, and developer environments.
* 7+ years of experience working in automotive or similar industry over embedded software development
* Advanced experience in Embedded Linux Controller Application development with Embedded C
* Intermediate to Advance 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)
* 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)
* Strong problem-solving skills, ability to solve technical problems independently and support others when needed
* C1 English level
**Nice-to-Have Skills:
* Knowledge/ basic experience with other programming languages (Python/C++) is highly desired
* Experience with Behavioral tree design is highly desired
* 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)
**Languages:
English: C1 Advanced