Project Overview
We are seeking a skilled Embedded Software Engineer to join our team. This role will involve working on the development and optimization of automated and autonomous control application software using C in an embedded environment (Linux based), following Scrum methodology.
The successful candidate will be responsible for actively supporting and sharing technical guidance to the team, coaching in technical topics, providing right direction, result-oriented, and responsible for delivering tasks as per customer expectation as a team.
Key Responsibilities:
* Responsible for software development activities, ensuring performance to specifications.
* Ensure high-quality design supported by testing and verification methods.
* Creation and maintenance of documentation.
* Proactively discussing technically with customers and project stakeholders about approach, activities, risks, and issues.
* Development of software design covering related software requirements and respecting defined software architecture.
* Perform peer reviews to improve implementation quality.
Mandatory Skills and Qualifications:
Minimum 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 advanced experience working under ROS2 systems (Linux Jazzy/humble).
Basics to intermediate experience with communication protocols (J1939,CAN, CAN2B, CANFD).
Knowledge/basics experience with MQTT, ETH.
Experience with configuration and change management tools (e.g. Git, GitHub).
Ability 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).
Customer-facing communication skills and a strong team player.
Strong problem-solving skills, ability to solve technical problems independently and support others when needed.
Intercultural orientation, proactive and collaborative attitude, result-oriented, and customer-centric.
C1 English level, and ability to travel to the US.
Nice-to-Have Skills Description:
Knowledge/basics experience with other programming languages (Python/C++) is highly desired.
Experience with behavioral tree design is highly desired.
Knowledge in safety-related processes (ISO26262) and security-related processes (ISO21434).
Requirements engineering, and strong knowledge about Quality assurance, Software release procedures, and capability models (e.g. ASPICE, CMMI).
Working with diagnostics (UDS ISO 14229, SAEJ1939).
Languages: English - C1 Advanced.
Benefits and Opportunities
This role offers opportunities for professional growth and development within a dynamic and fast-paced environment. You will have the chance to work on exciting projects, collaborate with experienced professionals, and contribute to the success of the company.