About the job
Motional’s CORE team is responsible for our vehicle’s Compute and Onboard Runtime Environment. We are creating a world leading AI compute platform for autonomous vehicles. This is the system that executes the software and neural networks that make our vehicles autonomous. The Next-Gen Technologies team is part of CORE. We work at the intersection of software engineering, machine learning, sensors, and hardware compute platforms to evolve Motional’s on-board vehicle architecture. If you are a software engineer and love the idea of working on embedded AI hardware and software systems to create the next generation of autonomous vehicles, we would love to talk with you.
Responsibilities
Focus deeply on ML model deployment, integration of multiple ML models, and ML model optimization on embedded compute platforms.
Dive deep into the full ML software stack. Analyze ML workload performance on a variety of hardware processors, optimize ML models, improve ML software, and help us continually improve our stack through the application of efficient and effective ML approaches.
Design, develop, test, integrate, and optimize software and tools on a variety of ML compute architectures.
Collaborate with deep learning experts in perception, prediction, and other autonomous driving application areas to enable algorithms on GPU, NPU, and other ML accelerator architectures.
Optimize the utilization of GPU/NPU resources and sharing of GPU/NPU access across multiple programs running on the same system.
Lead designs to determine the needs of the system and how to best meet those needs through continually improving our ML software stack.
Advise peers and management on technical matters.
Qualifications
Minimum
Experience with machine learning accelerators, including GPUs, NPUs, TPUs, and their programming environments, including CUDA, TensorRT, or similar technologies.
Strong experience with modern C++ development in a Linux environment.
Experience with parallel and high-performance computing.
Comfortable with experimentation and evaluating different options as we work towards finding solutions that work.
A degree in Software Engineering, Computer Science, Electrical or Electronic Engineering, or similar technical field of study, or you have equivalent knowledge gained through your practical experience.
Preferred
Experience with PyTorch, TensorFlow, ONNX, and/or other ML frameworks.
Experience with embedded systems development for ARM-based system-on-chip architectures.
Experience working in a MLOps or DevOps environment.
Passion for self-driving technology and its potential for positive impact on the world.