Apple Media Products Engineering - Fullstack Software Engineer (ML Platform)

    • Seattle, WA

Summary

Posted: Jul 7, 2020

Weekly Hours: 40

Role Number: 200159119

The Apple Media Products Engineering team is one of the most exciting examples of Apple's long-held passion for combining art and technology. These are the people who power the App Store, Apple TV, Apple Music, Apple Podcasts, and Apple Books. And they do it on a massive scale, meeting Apple's high expectations with high performance to deliver a huge variety of entertainment in over 35 languages to more than 150 countries. These engineers build secure, end-to-end solutions. They develop the custom software used to process all the creative work, the tools that providers use to deliver that media, all the server-side systems, and the APIs for many Apple services. Thanks to Apple's unique integration of hardware, software, and services, engineers here partner to get behind a single unified vision. That vision always includes a deep commitment to strengthening Apple's privacy policy, one of Apple's core values. Although services are a bigger part of Apple's business than ever before, these teams remain small, nimble, and cross-functional, offering greater exposure to the array of opportunities here. Being the source for so much digital content requires maintaining relationships with a vast number of providers, from record labels to movie studios to app developers. The Digital Supply Chain Engineering team (DSCE) is responsible for ensuring that new content is uploaded, processed, cataloged, and available on our storefronts when the provider expects it to be, and with the highest quality. We are looking for a Fullstack Software Engineer to help build the next generation of Machine Learning service infrastructure to analyze different kinds of digital assets (app, image, video, music, etc.) at AMP. This role will be responsible for building end-to-end ML service data pipelines from data collection, annotation, training to productionize all of our ML-specific use cases. We are solving for issues of complexity with disparate data sources across many internal workflows, and making our pipelines run more efficiently. OUR TECH STACK: - Python (TensorFlow/PyTorch/Keras) for ML research and production - Java for backend and Spark for offline data processing - JavaScript/React for frontend - Cassandra for data storage - Docker and Kubernetes as internal cloud infrastructure We don't expect prior experience with all the technologies involved, but you will be encouraged to learn to use them optimally. You will work together with both ML engineers and engineers owning all the components of our stack, operations, and product teams to implement infrastructure and add product features vital for our ML efforts.

Key Qualifications

  • Strong experience in building consumer-facing single-page applications in JavaScript ES6+, HTML/CSS
  • Strong experience with developing rich, interactive and well-performing user interfaces using frameworks like React
  • Proven expertise in building highly scalable, distributed, loosely coupled systems
  • Deep knowledge of concurrency, resiliency, and caching
  • Experience with building services using REST/gRPC
  • Experience with running microservices in public cloud infrastructure like Amazon AWS/Microsoft Azure or Kubernetes
  • Working experience with RDBMS&NoSQL, technologies like MySQL/Cassandra
  • Expertise in object oriented programming, data structures, algorithms and design patterns
  • Understanding of distributed computing concepts like sharding, queues, consensus and service discovery


Description

- Design, implement, and evolve the web application for different ML use cases - Build a flexible ML service platform that can be easily customized toward different use cases - Design and build scalable infrastructure to support our ML pipelines from data collection and training to deployment - Integrate with different internal digital asset processing workflows to provide Machine Learning as a service - Collaborate with multi-functional teams of engineers, data analytics, Machine Learning specialists, and products to build new features

Education & Experience

BS, MS or PhD in Computer Science or equivalent work experience.

Additional Requirements

  • Nice to have:
  • - Experience with A/B Testing
  • - Experience building end-to-end Machine Learning system
  • - Experience with Big Data processing framework like Hadoop/MapReduce/Spark
  • - Experience using CI/CD environments (Jenkins, Spinnaker, etc)



Back to top