Sr. Robotics Software Engineer, Autonomous Systems - SPG
Santa Clara Valley (Cupertino), California, United States
Software and Services
Apple SPG (Special Projects Group) is looking for experienced robotics and software engineers to join our team to push the boundaries of autonomous planning algorithms (behavior, predictions, motion planning, and architecture).
Key Qualifications
- Expertise in one or more of the following areas: behavior planning/decision-making, predictions, machine learning, motion planning (sampling, search based planning, optimization), estimation, control, and/or high-performance real-time algorithms.
- Experience programming autonomous robots, modeling multi-agent systems, and developing algorithms for them.
- Excellent C++ and/or Python development skills.
- Solid and fluent understanding of advanced algorithms and data structures.
- Experience analyzing results of simulations and field tests.
- 5+ years of professional or equivalent experience.
- You must be hands-on, eager, curious and never satisfied with the status quo.
- You must love learning and being challenged.
Description
You will develop cutting edge robotics technology at the intersection of machine learning, AI, and classical robotics. This involves the design and implementation of algorithms that run on a robot in real-time in a safety critical application that involves autonomous interactions with the surrounding world in an uncontrolled environment. You will test and deploy your work in simulation and in the real world on state-of-the-art robotics hardware. You will contribute to the development of an ambitious and innovative project as part of a dedicated team of world-class engineers.
Education & Experience
M.Sc., or Ph.D. in computer science, engineering, or equivalent professional experience.
Additional Requirements
- Preferred Experience:
- • Experience with building production code.
- • Designed one or more machine-learned approaches to solve a robotics problem.
- • Experience with cloud-based tools to automate experiments and analysis at scale.
- • Familiarity with real-time, multi-process, multi-threaded coding.
- • Comfort using the command line in Linux.
- • Experience with 3D geometric math.
- • Comfortable with collaboration tools for programming