Apple
Sr Software Engineer
Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.
Senior data engineer в команду Device Compute Analytics (Apple Services Engineering). Владеет data lakehouse: превращает поток событий устройств и вычислений в надёжные, быстрые для запросов таблицы, на которых строятся прогнозирование, планирование мощностей и кросс-биллинг.
Задачи
- Строить и поддерживать Spark streaming и batch пайплайны на Scala или Java, включая бэкфиллы
- Проектировать таблицы и layout lakehouse (партиционирование, sort order, компакция, эволюция схемы) для быстрых запросов Iceberg через Trino
- Валидировать входящие события, обрабатывать изменения схемы, направлять некорректные события в dead-letter путь для ревью и replay
- Совместно с аналитиком данных определять и обеспечивать качество данных: версионирование схем и data contracts с проверками совместимости в CI, мониторинг свежести, полноты, дублей и опозданий, алерты
- Работать с full-stack инженером, строящим дашборды: проектировать таблицы и запросы, использовать AI-инструменты для кодинга с проверкой результатов
- Принять на себя Apache Flink job, который загружает события из Kafka в Iceberg
- Оптимизировать производительность и стоимость: right-sizing джобов, устранение skew и small-file проблем, тюнинг запросов и хранилища
- Участвовать в on-call ротации по инцидентам Data Lakehouse, ревьюить код и дизайн, менторить инженеров
Требования
- Bachelor's degree in Computer Science, Engineering или смежной области
- 7+ лет профессионального опыта data engineering с production пайплайнами в масштабе, включая диагностику и оптимизацию производительности джобов и запросов, либо эквивалентная степень плюс опыт
- Production опыт с Apache Spark, включая batch и streaming (Structured Streaming)
- Сильные навыки data modeling, опыт проектирования аналитических схем на Apache Iceberg или аналогичных lakehouse форматах
- Владение Java или Scala и сильный SQL
- Опыт построения проверок качества данных и мониторинга production пайплайнов, включая алерты по свежести и полноте и сверку исходных и производных данных
- Продуктивное использование AI-инструментов для кодинга в реальной работе с дисциплиной проверки сгенерированного кода и запросов
- Отличные коммуникационные навыки и критическое мышление в командной работе
Навыки
- Apache Spark
- Structured Streaming
- Scala
- Java
- SQL
- Apache Iceberg
- Trino
- Apache Kafka
- Apache Flink
- Kubernetes
- dbt
- Python
- data contracts
- schema registry
- CI