At Apple, we find joy in solving hard problems, and we are motivated by curiosity to keep making our products better. Apple Services Engineering's Device Compute Analytics team provides the data foundation for Apple's internal device cloud, which supports all of Apple's hardware, software, and services. Our work helps Apple ship entirely new products and features, and gives teams the data to keep existing ones meeting a high standard.
We are looking for a senior data engineer to own our data lakehouse: turning a stream of device and compute events into data that is accurate, timely, and easy to explore. You will build the pipelines and table designs that power forecasting, capacity planning, and fair cross-charging across the organization, and help us spot issues before an internal customer ever notices them. Join a high-performing team, work with colleagues across Apple, and make data that people across the company rely on.
You will own the data lakehouse that turns raw device and compute events into reliable, fast-to-query tables. You will build and run the Spark pipelines, design the tables that dashboards query through Trino, and put in place the checks that keep the data accurate and timely. Over time, you will also take over the ingestion of those events from Kafka.
Our services publish events describing device lifecycle, job and session activity, provisioning, and failures, and those events land in Iceberg. You will turn them into datasets people can trust and build on, working with a data analyst and a full-stack engineer (who builds the dashboards) on the team, as well as application engineers and teams across Apple.
Build and run Spark streaming and batch pipelines in Scala or Java, including backfills when data issues are found or new transformations are added for past events
Design lakehouse tables and layouts (partitioning, sort order, compaction, schema evolution) so dashboards can query Iceberg quickly through Trino
Validate incoming events, handle schema changes, and route malformed or unknown events to a dead-letter path for review and replay
Define and enforce data quality with a data analyst: keep schemas and data contracts under version control with compatibility checks in CI, monitor freshness, completeness, duplicates, and late arrivals, and alert the right owner
Partner with the full-stack engineer who builds the dashboards, designing the tables and queries behind them and using AI coding tools to move faster while checking the results
Take over the Apache Flink job that ingests events from Kafka into Iceberg
Improve performance and cost by right-sizing jobs, fixing skew and small-file problems, and tuning queries and storage
Join the on-call rotation for Data Lakehouse incidents, review code and designs, and mentor other engineers
Bachelor's degree in Computer Science, Engineering, or a related field
7+ years of professional data engineering experience building production data pipelines at scale, including diagnosing and improving the performance of data jobs and queries, or equivalent advanced degree plus experience
Production experience with Apache Spark, including batch and streaming (Structured Streaming) pipelines
Strong data modeling skills, with experience designing analytics schemas on Apache Iceberg or comparable lakehouse table formats
Proficiency in Java or Scala, and strong SQL
Experience building data quality checks and monitoring for production pipelines, including freshness and completeness alerting and reconciliation between source and derived data
Productive use of AI coding tools in real delivery, with the discipline to validate generated code and queries
Excellent communication and critical thinking skills in a team environment
Production experience with Apache Kafka as a streaming source
Production experience with Apache Flink, including the Iceberg sink, exactly-once delivery, and stateful jobs on Kubernetes
Experience with data contracts and schema management as code (for example schema registries or dbt model contracts)
Experience tuning tables and queries for a distributed SQL engine such as Trino
Experience with workflow orchestration and Python automation
Experience building dashboards or data applications that put data in front of users, with attention to visual design
Experience owning the design of a data platform or pipeline, not just implementing it
Experience mentoring engineers and leading cost or reliability improvements
Job description provided by Apple.
View the original posting