Algorithm Engineer - Apple Maps Routing and Navigation
Santa Clara Valley (Cupertino), California, United States
Software and Services
Apple Maps provides driving, walking, and public transit solutions to millions of people every day. Our Routing Team is responsible for building Apple’s routing engine and navigation solutions, which empowers users to get to their destinations as quickly and safely as possible. We do this by developing cutting-edge algorithms and features, constantly updating and improving the navigation and travel experiences for our users. If you want to develop graph algorithms with large data sets and you understand the importance of a rich, accurate, and timely user experience, this may be a role for you.
- Strong understanding of graph algorithms and data structure design
- Practical experience of making an algorithm perform efficiently upon implementation
- Ability to write strong performance code, preferably C++
- You value a scientific approach to problem solving, leveraging experimentation and critical thinking to drive and validate high quality results
- Good interpersonal and communication skills, possessing the ability to work both independently and in a team environment
Our team has direct ownership of Apple’s routing recommendations and navigation API's along with the optimization and accuracy of these solutions. We do this by using the most advanced graph algorithms and pair them with large amounts of rich data to formulate a host of navigation solutions across multiple platforms, including iPhone, iPad, iMac, CarPlay, Watch, and other web app services. We have a modern development process, analyzing our initial algorithms, implementing and experimenting as we go, adjusting and optimizing our solutions to ultimately provide the best routing experience. Whether it is for driving, walking, or transit, our users rely on us to help get them to where they need to go. As an algorithm engineer on our Maps Routing Team, your responsibilities will include: Making route-finding algorithms more efficient Designing and implementing new algorithms Working on high performance code using C++ Participating in design and code reviews Own the efficiency and accuracy of your designs, along with being on-point overseeing your work through the development and implementation life-cycles, ultimately delivering excellent end-results Working with other engineers and teams cross-functionally to deliver high quality routes to our customers Influencing the future product direction for our features Assist with various team and support needs in a 24/7 environment to ensure our systems are well maintained and our projects remain on schedule, providing occasional on-call pager support.
Education & Experience
MS or PhD in computer science, mathematics, or related fields with emphasis on algorithm design and implementation We will consider students who are just finishing up their credentials for this full-time role
- For this role, the following skills would be a plus, but are not necessary.
- Maps, routing, navigation, or geometrical computation experience