General Motors

Staff Software Engineer, ADAS

General Motors

full-time

Posted on:

Origin:  • 🇺🇸 United States • California

Visit company website
AI Apply
Manual Apply

Salary

💰 $186,200 - $285,300 per year

Job Level

Lead

Tech Stack

C++LinuxPythonRTOS

About the role

  • Work within GM's ADAS/AD organization to develop cutting-edge ADAS features for next-generation vehicles
  • Design and develop platform software for ADAS embedded platforms, including drivers, middleware frameworks, platform applications, and communication stacks
  • Design and develop safety-critical platform applications ensuring high software quality
  • Create automation scripts in Python and implement multithreaded applications
  • Work with interprocess communication stacks and middleware frameworks (e.g., DDS, Zenoh)
  • Enforce good software design practices during requirement gathering, architecture definition, unit testing, and code reviews
  • Assess and integrate open-source technologies focusing on performance, security, and compatibility
  • Debug, test, and validate software on target hardware and support production deployment and manufacturing issue resolution
  • Collaborate with cross-functional teams to deliver scalable, secure, high-performance platforms

Requirements

  • 12+ years of experience in advanced programming with C or C++ (C++11 or newer preferred)
  • Experience designing and developing safety-critical platform applications using C and C++14+
  • Hands-on experience with Buildroot/Yocto (recipe creation, layer management, image customization)
  • Strong expertise in Embedded Linux and Linux kernel development
  • Proficiency with 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 (DDS, Zenoh, MQTT)
  • Experience with interprocess communication stacks and middleware frameworks
  • Ability to create automation scripts in Python and develop multithreaded applications
  • Skilled in Linux debugging tools like GDB
  • Proficiency in network analysis using tcpdump and Wireshark
  • Familiarity with UDS standards (ISO-14229)
  • Preferred: experience developing on/for embedded Linux/POSIX systems
  • Preferred: demonstrated experience building, testing, and shipping production software
  • Preferred: safety-critical development experience (FDA, FAA, Automotive)
  • Preferred: experience with networking, camera hardware, or NVME storage
  • Preferred: experience with ROS or other robotics middleware platforms
  • Preferred: experience with other languages (eg Python) and RTOS like QNX or VxWorks