Software Engineer (distributed Systems, Java)

Apple Apple · Big Tech · London, United Kingdom +1 · Software and Services

Software Engineer role focused on building and improving features and services for Apple's digital content platforms (Podcasts, Apple Music, etc.). The role involves designing, implementing, and optimizing large-scale distributed data systems, data pipelines, and data stores, with a focus on personalization features, customer experience, and privacy. Requires strong Java server engineering skills and experience with distributed systems and large data technologies.

What you'd actually do

  1. Building products and services for millions of users with a focus on great customer experience and privacy
  2. Deploying live customer-facing features with millisecond-latencies globally over large datasets
  3. Distributed systems, caches and data stores
  4. Data modelling and data architecture as optimised for large data patterns (efficient storage and query on HDFS, realtime query patterns in key-value stores, columnar schema design etc.)
  5. Large scale data pipelines, using Kafka and Hadoop-ecosystem technologies

Skills

Required

  • Java server engineer
  • large scale data technologies
  • large scale data pipelines
  • distributed systems
  • data modelling
  • data architecture
  • algorithms
  • data structures

Nice to have

  • Collaborating with multiple teams
  • Making critical architectural decisions