Mission Summary
Motional’s CORE team is responsible for our vehicle’s Compute and Onboard Runtime Environment. We are creating a world class AI compute platform for autonomous vehicles. This is the system that executes the software and neural networks that make our vehicles autonomous. If you love the idea of working with software development, machine learning, and running software, data, and neural networks on the most powerful embedded AI hardware and software systems, we would love to talk with you.
The Advanced Projects team is part of CORE. We work at the intersection of software engineering, machine learning, and compute platforms. Our mission is to guide Motional’s product and engineering decision-making. If we are successful, we provide a map of the territory that de-risks engineering projects across Motional, contributing to a technology roadmap that helps ensure Motional remains at the forefront of AV development. We influence future platform design choices through developing working prototypes and proofs-of-concept informed by researching the latest advances in software engineering, machine learning, and compute platforms.
What You’ll Be Doing
As a machine learning engineer in the CORE Advanced Projects team, you will work with small, cross-functional teams of engineers and researchers to explore and shape the future of autonomous vehicle (AV) development. You will not just solve challenging problems with cutting edge design and algorithms; you will help us identify and articulate the problems we should be trying to solve.
Specifically, you will:
- Conduct research to understand the latest neural networks for perception and prediction problems such as object detection, instance segmentation, motion prediction, sensor fusion, etc. and develop software to run these networks on our compute platforms.
- Develop state-of-the-art, deep learning first, perception and prediction prototypes and proofs-of-concept on new compute architectures and neural network accelerators by researching methods for neural networking inference and optimization.
- Help us define the optimal microarchitecture on which to fit different neural networks by, for example, developing benchmarks to evaluate the performance of different neural networks on different neural network accelerators and hardware architectures.
- Build machine learning infrastructure to support a continuous experimentation environment that helps us iterate quickly, evaluating neural networks on different compute architectures.
- Conduct deep learning experiments, write reports, and file patents.
What We’re Looking For
- You have a passion for self-driving technology and its potential impact on the world.
- You are comfortable identifying R&D opportunities, justifying R&D goals, and executing towards those goals.
- You are comfortable with experimenting and evaluating different options as we work towards finding solutions that work.
- Understanding of common Machine Learning and Deep Learning algorithms (e.g. for classification, regression, and clustering).
- Experience designing, training, and analyzing neural networks for at least one of the following applications: object detection, image segmentation, sensor fusion, multitask learning, motion prediction, and/or tracking.
- Experience with developing machine learning software for different computing architectures and neural network accelerators such as FPGAs, GPUs, NPUs, MCUs, SoCs and their associated computing platforms.
- You can demonstrate proficiency with Python, including standard scientific computing libraries and frameworks.
- Knowledge of software engineering principles including software design, source control management, build processes, code reviews, testing methods .
- You have experience with PyTorch, TensorFlow or other deep learning frameworks.
- You have a Masters or PhD in Machine Learning, Computer Science, Applied Mathematics, Statistics, Physics or a related field, or equivalent education and experience.
Bonus Points (not required)
- Experience with developing machine learning models for sensor data.
- Experience working in a MLOps or DevOps environment.
- Experience working with technologies relevant to Motional’s industry and business context, e.g., autonomous vehicles, advanced driver-assistance systems, robotics.
-
Experience with at least one additional major programming language, e.g., one or more of C++, C, Rust, Java, Go, Python (or similar languages) and associated software ecosystems. The primary languages we use are C++ and Python in a Unix/Linux environment.