Mission Summary
The Infrastructure team designs and develops high quality software to leverage embedded compute platforms for autonomy stack development. Most of the software we write will affect safety critical applications on the Motional vehicle platforms. We are a team of engineers who bring a broad experience in software development and leverage this to develop software which pushes the boundaries of what has been achieved in the autonomous vehicle safety space.
We are looking for engineers who are motivated to solve hard problems and can lead development of complex safety-critical software components on embedded platforms. This is a Hybrid position.
The Motional global headquarters are located at 100 Northern Avenue in Boston, MA. Nestled in the bustling Seaport district with sweeping views of Boston Harbor and downtown Boston, the offices are located close to major transit lines and a quick walk to various restaurants and popular attractions.
What You'll Be Doing:
- Designing and developing infrastructure software on various hardware platforms for applications such as Vision Processing, Radar systems, Safety monitoring etc., to be run on self-driving vehicles
- Designing firmware components such as device drivers and kernel libraries
- Designing test harnesses for embedded software components as well as full systems
- Providing technical mentorship to engineers
- Proactively supports the team with engineering support in their product area.
What We're Looking For:
- Experience with creating detailed requirements from use cases.
- Ability to lead a technical initiative, including breaking down work and guiding other engineers through execution.
- Experience writing software for embedded platforms in C and C++.
- Experience with TDD - unit tests and integration tests.
- Experience working on embedded Linux / RTOSs.
- Experience working with networks (Ethernet, CAN etc.) and the common networking protocols.
- Experience with debugging on embedded platforms.
- Experience writing software in Python and experience doing automation with shell scripting.
- Experience working with ARM Cortex MCUs or Microprocessors
Bonus Points (not required):
- Experience working with large data pipelines, and platforms that require deterministic execution.
- Experience using inter-system communication protocols such as I2C and SPI
- Experience deploying Machine Learning models.
- Experience working with FGPAs and GPUs.
- Experience working directly with the Linux kernel or Device Drivers.
- Experience working with RTOSs such as FreeRTOS, ThreadX or PreemptRT.
- Experience with Simulation and Code Generation, and knowing when their use is appropriate.