Software Engineer - Kafka

Apple's Kafka
Charing Cross, United Kingdom
3 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English

Job location

Charing Cross, United Kingdom

Tech stack

Java
Data Structures
Software Debugging
Distributed Systems
Fault Tolerance
Enterprise Messaging Systems
Open Source Technology
Software Engineering
Load Balancing
Information Technology
Kafka
Free and Open-Source Software

Job description

Apple's Kafka organization develops messaging systems that are reliable, scalable, and performant. The team maintains Apple-scale deployments while contributing to Kafka internals, brokers, client libraries, replication, fault tolerance, partitioning, and system optimizations. As a leader, you will manage, mentor, and grow engineers responsible for both internal platform needs and upstream open-source contributions. You will oversee technical execution, maintain engineering standards, and ensure operational excellence across the Kafka ecosystem.

Requirements

  • Experience in software development, with strong experience in distributed systems or messaging platforms at scale.
  • Proven experience delivering complex, large-scale infrastructure or platform components.
  • Proficiency in Java, Scala, or other languages used in Kafka development.
  • Strong understanding of algorithms, data structures, fault tolerance, and performance for large-scale messaging systems.
  • Hands-on experience designing, building, and operating systems using Apache Kafka, * Solid understanding of Kafka broker internals, including replication, partitioning, and client interaction.
  • Familiarity with distributed systems concepts such as consensus, consistency models, and fault tolerance.
  • Experience with multi-datacenter deployments, load balancing, quota management, or tenant isolation.
  • Experience with testing methodologies such as fault injection, performance benchmarking, or property-based testing.
  • Proven ability to maintain strong operational standards, including monitoring, incident response, and remediation.
  • Experience contributing to or working with open-source projects, ideally Apache Kafka or related ecosystems.
  • Hands-on experience with distributed system design and debugging at scale.
  • Bachelor's, Master's, or PhD in Computer Science or a related technical field, or equivalent practical experience.

Apply for this position