Software Engineer - Machine Learning & Algorithms

Santa Clara Valley (Cupertino), California, United States
Software and Services


Weekly Hours: 40
Role Number:200166061
At Apple, we work every single day to build products that enrich people’s lives. Our Advertising Platforms group makes it possible for people around the world to easily access informative and visionary content on their devices while helping publishers and developers promote and monetize their work. Our technology and services power advertising in Apple News and Search Ads in App Store. Our platforms are highly-performant, deployed at scale, and setting new standards for enabling effective advertising while protecting user privacy. We are looking for an ambitious individual who can thrive in an Agile environment. You will develop and apply advanced techniques and algorithms to improve an ad network. You’ll be developing and implementing new optimization and advertising algorithms. The position also involves developing a keen understanding of the ad network behavior; detecting meaningful data patterns; assuring the integrity and breadth of the data; measuring user, campaign and app performance; and finally analyzing the results of extremely large-scale experiments. In addition, the successful candidate will also apply advanced ML techniques for designing privacy mechanisms, encryption techniques, pricing/auction strategies and ranking algorithms, by utilizing data available only on the user’s device.

Key Qualifications

  • Experience in Algorithms, Architecture, Artificial Intelligence, Compilers, Database, Data Mining, Distributed Systems, Machine Learning, Networking, Statistics (game theory, auction theory, quantitative analysis), or Systems Software implementation of new algorithms
  • Proficiency with databases, SQL, and scripting languages
  • Practical understanding of the mathematics behind modern machine learning, linear algebra and statistics
  • Ability to take requirements from design through to implementation both independently and with larger teams
  • Closely working with operational teams on deployment, monitoring, management concerns
  • Hands-on experience in Reinforcement Learning framework (Deep RL, multi-armed or contextual bandits) applied to real world problems
  • Experience in distributed machine learning architectures or federated learning


You will have the opportunity to work on a platform with extreme scale requirements. You should have experience developing and implementing ad algorithms, yield optimization solutions and network data processes within an ad network. You have excellent understanding of scalable architectures including operational concerns. You have the ability to be a great teammate under tight deadline constraints is key to success.

Education & Experience

BS/MS/PhD in computer science or equivalent field with 3+ years relevant experience.

Additional Requirements