Your daily activities will include understanding requirements, designing solutions, coding, testing, and integrating our services to provide a great user experience. You will also be expected to participate in prototyping, mentoring, design / code reviews, and incident analysis. As a senior engineer, you will apply your expertise to prioritize critical features and deliver quality solutions.
10+ Years of experience in Software Engineering including:
Strong coding experience in Java, Python
Extensive experience in building distributed stateful micro services systems using RPC and Event Driven methodology.
Familiarity with Domain Driven Design approach.
Extensive experience in building analytics systems using event driven methodology.
Deep experience in API design, service oriented architecture (SOA), large scale distributed systems and asynchronous patterns with data guarantees.
Experience in developing fault tolerant systems in multi-DC environments
Strong knowledge of open-source stream and batch processing platforms, such as Spark, Flink, Kafka; and data formats - Avro, Protobuf
Experience working with Data Lakehouse technologies (e.g. Apache Iceberg)
Experience with large dataset storage solutions (HDFS, S3)
Experience with RPC protocols (REST, gRPC)
Excellent written and oral communication skills are a must
Strong knowledge of SQL and NOSQL data-stores
Experience using Splunk, OpenTelemetry
Experience with Cloud Computing platforms (particularly AWS, k8s) is a plus.
Security (AuthZ/AuthN, mTLS, HTTPS)
CDN knowledge
Note: Apple benefit, compensation and employee stock programs are subject to eligibility requirements and other terms of the applicable plan or program.