Software Engineer - Maps Services
Santa Clara Valley (Cupertino), California, United States
Software and Services
Do you like to take ownership of a feature and drive it to completion? Do you enjoy engineering the best solution while meeting various constraints? Do you enjoy working with multiple teams to support an awesome user experience? Then we have the job for you! Apple Maps is used every day by hundreds of millions of people around the world and we are looking for talented people to help us build the next generation of rich, dynamic interactive map services that will power today’s Apple products as well as those yet to be invented.
- 4+ years of professional Object Oriented development (e.g. C++, Java, Scala) in a Linux environment
- 2+ years of component and/or system level design
- Experience with scripting languages (e.g. Python, Ruby)
- Excellent communication skills
The Maps Team is looking for a developer to support and grow some of the core backend services that support Apple Map's features. Ideal candidate would have experience with system architecture, as well as the design, implementation, and testing of individual components but also be comfortable with multiple scripting languages. Must be able to work with other teams to understand their needs, define requirements and interfaces, and implement a solution. Successful candidates will need to have strong programming skills, superb communication skills, be an effective team member, and be able to take ownership of a project. Helpful experience includes: - Designing and deploying large-scale distributed data processing systems using MapReduce and tools like Hadoop, Crunch or Spark - A mind for web services - how they scale, how they should fit together, and how they’re likely to break - Diagnosing and debugging complex systems - A focus on quality, with experience writing unit tests, developing test plans and working with evaluation teams In this role you will be a key cross-functional contributor to Maps services, working together with the client software teams to build software used by the next generation of Apple devices. You will work with new sources of data to bring them to our users, help design APIs and services for new features, and support our existing users.
Education & Experience
BS or MS in Computer Science or related field.
- Experience with Lucene/Solr/Elastic Search or any other Search Engine
- Experience with Hadoop/Map-Reduce/Spark
- Experience with data engineering