Мы ищем Middle-level Software Engineer для работы над ядром движка запросов крупномасштабной распределённой платформы данных. Вы будете разрабатывать функции планирования запросов, оптимизации и выполнения, вносить вклад в компоненты, критичные к производительности, и помогать расследовать и исправлять проблемы в продакшене, сообщаемые реальными корпоративными клиентами. Это роль системного уровня, backend‑инженерии, сосредоточенная на внутренних механизмах распределённой обработки данных — а не на разработке приложений или CRUD‑сервисов.
Разрабатывать и поддерживать функции движка запросов — планирование, оптимизацию, выполнение и уровни доступа к данным Писать код, учитывающий производительность, на Java и/или C++ Исследовать и исправлять проблемы в продакшене и сообщения клиентов под руководством старших инженеров, включая исправления, выпускаемые в нескольких поддерживаемых ветках релизов Работать с семантикой SQL, планами запросов и операторами выполнения над крупномасштабными распределёнными данными Интегрировать колонковые форматы, открытые табличные форматы и драйверы подключения Вносить вклад в CI/CD и автоматическое тестирование в Jenkins Развёртывать и проверять изменения в Kubernetes (GKE/EKS/AKS) в GCP, AWS или Azure с Docker Отлаживать проблемы в планировании запросов, распределённом выполнении, управлении памятью и I/O; сотрудничать с командами в США по дизайну и ревью кода
B.S. или M.S. в области Computer Science, Computer Engineering или смежных дисциплин 3+ года опыта в backend / systems software engineering Сильная компетентность в Java или C++ с хорошими фундаментальными знаниями ООП и проектирования программного обеспечения, включая конкурентность и асинхронное программирование (особенно ценится уверенное владение обоими языками) Глубокие знания SQL и понимание реляционных и аналитических систем данных, включая концепции выполнения запросов Практический опыт работы с системами обработки данных: движки запросов, распределённые базы данных, ETL/ELT или аналитические платформы Опыт работы с конвейерами Jenkins и современными процессами разработки Docker и базовый Kubernetes (запуск рабочих нагрузок, отладка pod‑ов, уверенное использование kubectl) Практический опыт работы хотя бы с одним из крупных облаков (GCP, AWS или Azure) Уверенные навыки работы с Git/GitHub Умение работать с AI‑поддерживаемыми процессами разработки — использование современных AI‑инструментов для понимания кода, отладки и генерации тестов, с критической проверкой их результатов English Upper-Intermediate или выше (B2+) — ежедневное письменное и устное общение с инженерной командой в США Готовность работать в часы EU‑бизнеса со сдвигом на 2–3 часа позже для ежедневного перекрытия с утрами западного побережья США
Apache Arrow (колонковый in‑memory формат) и фреймворки планировщика/оптимизатора SQL, такие как Apache Calcite LLVM‑базированная компиляция выражений во время выполнения Открытые табличные форматы — Apache Iceberg, Delta Lake или Hudi — и колонковые файловые форматы, такие как Parquet, Avro или ORC MPP‑движки запросов (Presto, Trino или аналогичные); знакомство с распределёнными платформами данных, такими как Spark, Snowflake или Databricks Системы обмена сообщениями: Kafka, NATS или облачные pub/sub сервисы Внутренние механизмы планирования, оптимизации и выполнения запросов Драйверы подключения: JDBC, ODBC, Arrow Flight Managed Kubernetes (GKE/EKS/AKS), опыт работы в мульти‑облачных средах; Terraform Профилирование производительности систем, чувствительных к задержкам
Engagement: Long-term contract Location: Ukraine, remote