Senior Software Engineer (Asset Repository & Data Processing)
Vancouver, British Columbia, Canada
Software and Services
Apple Media Products (AMP) first delighted users with downloadable music in April 2003 with the opening of the iTunes Store. Since then, AMP has delivered countless innovations around the digital delivery of audio and video, and in 2008 revolutionized smartphone app distribution with the launch of the App Store. 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 an experienced software engineer to join our team dedicated to system evolution across DSCE. As with any software that has lasted more than 15 years, there are always opportunities to leverage new technology to improve performance, use fewer resources, simplify operations, and more. Our mission is to make engineers more productive while building efficiency and quality into our systems. This is a high-leverage, high-impact role that will expose you to all the systems Apple uses to process digital content for delivery to well over a billion people worldwide!
- Fluency in Java 11 and related tooling
- Protocol-level understanding of HTTP
- Experience building REST APIs with JAX-RS/Jersey
- Experience building manageable and reliable systems in a service-oriented architecture
- Experience with Cassandra
- Bonus Qualifications:
- Experience configuring and running Apache Traffic Server
- Experience with Kafka
- Experience with Spark
- Knowledge of cryptographic APIs and proper use of cryptographic primitives
- Experience & passion for tools and techniques to drive operational quality improvements
The Apple Media products team is looking for a Senior Software Engineer to join the Asset Repository & Data Processing team. We are responsible for storing and delivering the many petabytes of files used by the content import, management, processing, and distribution systems. Our team’s systems store, track, and deliver every app, song, movie, and video – both streamed and downloaded. Come help build and run the services and systems that underly the growth of the App Store, Apple Music, and Apple TV+ We're a team of consummate tech geeks who love figuring out how things work and trying to make them better. Sometimes it's a little tweak, sometimes it's a fundamental shift - usually it's somewhere in between. We brainstorm on whiteboards, share ideas at team lunches and pot-lucks, build prototypes, present proposals to teams, embed for a while to help them get started, check the metrics, and repeat!
Education & Experience
BS or MS in Computer Science or equivalent work experience.
- This position is in a small team that is tightly focused on a specific set of critically important systems. Your ability and self-motivation to learn new technologies, and promote novel solutions to the problems at hand, is important to success. The team is remotely distributed across the continental US, so strong communication skills are necessary.