At ADAS/AD (Advanced Driver Assistance Systems and Automated Driving) Software Organization within General Motors, we are working on developing cutting-edge ADAS features for next-generation vehicles. We are seeking an experienced platform software engineer to design and develop platform software for ADAS embedded platform.
Requirements
- 12+ years of experience in advanced programming with C or C++ (C++11 or newer preferred) for application development.
- Hands-on experience with Buildroot / Yocto , including recipe creation, layer management, and image customization.
- Strong expertise in Embedded Linux and Linux kernel development.
- Proficiency in build systems such as Bazel and CMake .
- Deep understanding of embedded systems development and real-time operating systems (RTOS).
- Experience with topic-based communication middleware (e.g., DDS, Zenoh , MQTT).
- Skilled in Linux debugging tools like GDB.
Responsibilities
- Design and develop safety-critical platform applications using C and C++14+, ensuring high software quality standards.
- Create automation scripts in Python and develop multithreaded applications.
- Work with interprocess communication stacks and middleware frameworks (e.g., DDS, Zenoh ).
- Enforce good software design practices throughout requirement gathering, architecture definition, unit testing, and code reviews.
- Assess and integrate new open-source technologies into automotive applications, focusing on performance, security, and compatibility.
- Debug, test, and validate software on target hardware, providing support for production software deployment and resolving manufacturing issues.
Other
- Experience developing on and for embedded Linux / POSIX systems
- Demonstrated experience building, testing, and shipping production software
- Experience with safety critical development (FDA, FAA, Automotive)
- Experience with networking, camera hardware, or NVME storage
- Experience with ROS or other robotics middleware platforms