May Mobility is transforming cities through autonomous technology to create a safer, greener, more accessible world. Based in Ann Arbor, Michigan, May develops and deploys autonomous vehicles (AVs) powered by our innovative Multi-Policy Decision Making (MPDM) technology that literally reimagines the way AVs think.
Our vehicles do more than just drive themselves - they provide value to communities, bridge public transit gaps and move people where they need to go safely, easily and with a lot more fun. We’re building the world’s best autonomy system to reimagine transit by minimizing congestion, expanding access and encouraging better land use in order to foster more green, vibrant and livable spaces. Since our founding in 2017, we’ve given more than 300,000 autonomy-enabled rides to real people around the globe. And we’re just getting started. We’re hiring people who share our passion for building the future, today, solving real-world problems and seeing the impact of their work. Join us.
Essential Responsibilities
- Design, implement, and test-state-of-the-art robotics software in C/C++ to enable comfortable and safe behavior and control for Autonomous Vehicles
- Lead and participate in team code quality activities including design and code reviews
- Provide technical guidance to Technical Support Team on issue diagnosis and resolution
- Coordinate with cross functional teams to develop software and system requirements for Autonomous Vehicle behavior and controls subsystems
- Collaborate with data science team members to design and implement metrics capturing key performance indicators of Autonomous Vehicle subsystems
- Develop unit and simulation tests to validate vehicle performance across target operational domains
- Coordinate and execute on-vehicle tests to validate performance of Autonomous Vehicle software in real-world scenarios
- Diagnose and root-cause issues reported by commercial operations through the May Field Response process
- Develop tools and visualizations to enable support engineers to analyze performance of behavior and control subsystems from field data
Skills and Abilities
Success in this role typically requires the following competencies:
- Expert understanding of one or more of the following: behavior planning, decision making under uncertainty, path planning, probabilistic reasoning, prediction, machine learning, trajectory generation, controls or localization
- Awareness of the state of the art in the field, and be able to translate novel ideas into relevant solutions at May
- Ability to understand complex code bases and define architecture as a framework enabling others to solve problems.
- Ability to provide technical leadership for complex projects, including individual and team mentorship
- Ability to collaborate cross functionally with adjacent teams such as perception and controls as well as stakeholders outside of autonomy
- Communicates technical direction effectively at all organizational and technical levels.
- Defines measurable success metrics for May's technical roadmap to ensure delivery and health of the system.
Qualifications and Experience
Candidates most successful in this role typically hold the following qualifications or comparable knowledge or experience:
Required
- Bachelor's degree in Robotics, Computer Science, Computer Engineering, or a field that requires a strong mathematical and/or engineering foundation (e.g. physics, aerospace engineering)
- 7+ years of industry experience working on real-world robot systems including implementing at least two commercial projects working at a systems-level, delivering critical functions that make a robot work successfully in the field.
- Experience developing and deploying capabilities for robot behavior planning, decision-making under uncertainty, path planning, probabilistic reasoning, prediction, machine learning, trajectory generation, controls and/or localization
- Strong programming skills in C/C++
- Expertise with software development in a Linux environment
- Familiarity with standard development tools such as git, valgrind, and gdb
Desirable
- Masters or PhD in Robotics, Computer Science, or Electrical and Computer Engineering, Mechanical Engineering, or a field that requires a strong mathematical and/or engineering foundation (e.g. physics, aerospace engineering)
- Strong background in one of the robotics areas discussed above as demonstrated by developing and delivering to fielded robots multiple capabilities that solve critical problems in controls and motion planning
- Demonstrated ability to mentor and support more junior engineers in learning and contributing to robotics development and testing
- Strong programming skills in C, software development in a Linux environment
Physical Requirements
- Standard office working conditions which includes but is not limited to:
- Prolonged sitting
- Prolonged standing
- Prolonged computer use
- Travel required? - Moderate: 11%-25%
Want to learn more about our culture & benefits? Check out our website!
May Mobility is an equal opportunity employer. All applicants for employment will be considered without regard to race, color, religion, sex, national origin, age, disability, sexual orientation, gender identity or expression, veteran status, genetics or any other legally protected basis. Below, you have the opportunity to share your preferred gender pronouns, gender, ethnicity, and veteran status with May Mobility to help us identify areas of improvement in our hiring and recruitment processes. Completion of these questions is entirely voluntary. Any information you choose to provide will be kept confidential, and will not impact the hiring decision in any way. If you believe that you will need any type of accommodation, please let us know.
Note to Recruitment Agencies: May Mobility does not accept unsolicited agency resumes. Furthermore, May Mobility does not pay placement fees for candidates submitted by any agency other than its approved partners.