Software Data Engineer, Analytics - Apple Media Products
Seattle, Washington, United States
Software and Services
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 substantial scale, meeting Apple’s high expectations with high performance to deliver a huge variety of entertainment to millions of customers. Apple Media Products Analytics is looking for an outstanding engineer to help develop an analytics platform that will generate insights into customer experiences on products such as the Apple Music, App Store, and Bookstore. Our stores reach hundreds of millions of customers around the world, and have revolutionized how people interact with their music, movies, TV shows, apps, books, and podcasts.
- Demonstrated proficiency in data management and automation on Spark, Hadoop, and HDFS environments
- Experience managing data in relational databases and developing extract-transform-load (ETL) pipelines
- Knowledge of maintaining and debugging systems in Java runtime environments (JREs)
- Proficiency in Java and Scala, or/and C#, Clojure, or a similar object-oriented language
- Deep understanding and strong hands on experience with multithreading, networking (including non-blocking IO), etc.
- Confidence with SQL databases like Oracle and with NoSQL databases like Cassandra
- Experience driving product features, functional specifications, and development schedules,
- Able to represent their team and the team’s technologies
- Passion and prior experience designing and implementing large distributed systems
- Desire to be an advocate and driver for performance optimization, automation, and unit tests
- Able to pick up new technologies quickly
- Excellent debugging, critical thinking, and communication skills
- Tireless attention to detail
- Solid documentation and technical writing skills
The AMP Analytics team is responsible for collecting, analyzing, and reporting on customer experiences. From this data we generate insights into how customers interact with our products and use these insights to drive improvements to user-facing features. You will be working on a small team that highly values cooperation and brainstorming, with equal emphasis on design and implementation. You will be responsible for developing systems, tools, and visualizations to make sense of the data. We are looking for a sharp engineer who also has a keen sense of how to build good products. You are also a great teammate -- ready to engage in lively design discussions and able to give and receive constructive code reviews. Your curiosity drives you to explore new technologies and apply creative solutions to problems. The ideal candidate pays close attention to details, but also keeps sight of the bigger picture.
Education & Experience
BS degree in Computer Science or a related field
- - Proficiency with source control systems (SVN, Git) and build tools such as Gradle, Maven, etc.
- - Experience with the Big-Data ecosystem (Spark, Hadoop, Hive, Pig, etc.)
- - Built and deployed large scale data pipelines (e.g. Kafka, Spark, Storm)
- - Understands different data storage solutions and when to use them (e.g. RDBMS, Cassandra, Solr, Redis)
- - Experience implementing and administering logging, telemetry and monitoring tools like Splunk is a plus
- - Experience in cluster management/orchestration software like Mesos, Aurora or Ansible using tools such as Docker is a plus
- - Experience working with Cloud based environment a plus