About The Position

The Autonomous Vehicles System Software Team is looking for a hands-on System Software Engineer. As part of our team, you will work on our Autonomous Driving Platform software, implementing performant and scalable solutions for data collections and autonomous vehicle fleets. Our team is responsible for developing platform and middleware features for self-driving cars. This includes software that interacts with various sensors including Cameras, LIDAR, RADAR, GPS, IMU, Vehicle CAN etc. We are seeking candidates with interests in inventing, developing, and maintaining application framework and tools on multi-computer and heterogeneous architectures. The role encompasses working with various teams across the stack, from platform and embedded software to cloud infrastructure, underpinned by safety and performance. It extends an opportunity to contribute to the technology that will drive the cars of the future!

Requirements

  • BS or MS in Computer Engineering, Computer Science, or related engineering field (or equivalent experience).
  • 5+ years of professional experience working on autonomous vehicles software.
  • Excellent C and C++ programming skills.
  • Strong knowledge of programming and debugging techniques, especially for parallel and distributed architectures.
  • Proficient with AI-powered coding tools like Cursor, Copilot, Gemini, etc.
  • Strong background of Linux, QNX, and/or other real-time operating systems.
  • Thrive on writing low latency, highly performant code.
  • Great communication and analytical skills.

Nice To Haves

  • Experience with data-parallel and/or GPGPU programming, CUDA, OpenCL.
  • Knowledge of image processing APIs (e.g. OpenCV) and MATLAB tools.
  • Knowledge of automotive systems, notably ADAS applications.
  • Software development for modern OpenGL (Core Profile) and Linux.
  • Experience with version control systems GIT and build system Bazel.

Responsibilities

  • Designing and developing core components of NVIDIA DriveWorks SDK.
  • Developing and optimizing software architecture and frameworks for real-world performance while matching or exceeding customer requirements.
  • Working on areas such as sensor abstraction layers, data processing components, process scheduling, data serialization, network communications, and frameworks.
  • Performing in-vehicle tests, collecting data and completing autonomous drive missions.
  • Establishing unit tests, documentation for features, evaluating quality and proposing corrective actions.
  • Developing highly efficient production code in C++, making use of high algorithmic parallelism offered by GPGPU programming (CUDA).
  • Follow quality and safety standards such as defined by MISRA and AUTOSAR.

Benefits

  • You will also be eligible for equity and benefits .
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service