Loora стремится революционизировать образование и устранить языковые барьеры с помощью своих передовых ИИ, создавая первый в своем роде персональный ИИ-репетитор английского языка. Loora предлагает своим пользователям ИИ-репетитора, который всегда готов поговорить на любую интересующую их тему, предоставить немедленную обратную связь по навыкам владения английским языком и провести их на пути к беглой речи.
Мы ищем Backend инженера с глубокой экспертизой в области Data Engineering, который будет создавать и развивать системы, лежащие в основе продукта Loora, аналитики, экспериментов и разработки ИИ.
Вы будете работать над производственными backend-сервисами и инфраструктурой данных, принимая на себя техническую ответственность за полный жизненный цикл данных — от приема событий и обработки в реальном времени до оркестрации, моделирования, контроля качества и надежного доступа к данным. Эта роль сочетает в себе практическую backend-разработку с ответственностью за общую платформу данных Loora, тесно сотрудничая с командами backend, frontend, AI, DevOps, аналитики и продукта.
Ключевые обязанности
- Создание и поддержка производственных backend-сервисов, API и реактивных конвейеров обработки данных на Python и Java с четкими интерфейсами, устойчивой обработкой сбоев и комплексной наблюдаемостью.
- Ответственность за развитие пакетных и потоковых конвейеров данных Loora, поддерживающих аналитику продукта, понимание потребностей учащихся, эксперименты и обучение моделей ИИ.
- Проектирование и поддержка надежных моделей данных, общих метрик и бизнес-логики семантического слоя на всей аналитической платформе данных.
- Определение и обеспечение стандартов для контрактов данных, тестирования, отслеживания происхождения данных, свежести данных и наблюдаемости.
- Разработка надежных подходов к эволюции схем данных, восстановлению данных, повторному выполнению, распределению рабочей нагрузки и восстановлению после сбоев.
- Сотрудничество с командами DevOps, backend, frontend, AI, аналитики и продукта для предоставления повторно используемых возможностей работы с данными и поддержания четких границ систем.
Требования
- Минимум 6 лет опыта в производственной разработке программного обеспечения, в основном в backend-системах, включая значительный опыт работы с платформами или инфраструктурой, интенсивно использующей данные.
- Глубокое знание Python, Java и SQL, с опытом тестирования, типизации, оптимизации производительности и отладки в производственной среде.
- Прочные основы backend-инженерии, включая проектирование сервисов и API, асинхронную и параллельную обработку, обработку сбоев и эксплуатационную надежность.
- Опыт работы с реляционными и нереляционными базами данных, такими как PostgreSQL, Redis или MongoDB.
- Практический опыт работы с AWS, Docker, Kubernetes, CI/CD и производственной наблюдаемостью.
- Глубокий опыт проектирования и эксплуатации ETL/ELT конвейеров и пакетных или потоковых систем данных.
- Практический производственный опыт работы с Apache Flink для распределенной потоковой обработки.
- Практический производственный опыт создания реактивных конвейеров обработки данных с использованием RxJava/Project Reactor, включая обработку обратного давления, планирование, обработку ошибок, тестирование и эксплуатационную отладку.
- Опыт работы с событийно-ориентированными архитектурами и системами обмена сообщениями, такими как Kafka или AWS SQS.
- Глубокое понимание моделирования данных, архитектуры хранилищ данных (data warehouse) и озер данных (data lakehouse), эволюции схем данных и качества данных.
- Практический опыт работы с dbt для моделирования данных, тестирования, документирования, отслеживания происхождения данных и разработки семантического слоя.
- Практический опыт работы с минимум одной аналитической платформой данных, такой как Snowflake, Databricks, ClickHouse, Athena, Trino или Dremio.
- Практический опыт работы с минимум одной библиотекой DataFrame: Pandas, Polars или Daft.
- Опыт работы с инструментами оркестрации рабочих процессов, такими как Airflow или Dagster.
- Четкие коммуникативные навыки и сильное чувство ответственности, с подтвержденным опытом успешного внедрения кросс-функциональных технических инициатив.
Будет плюсом
- Опыт работы с платформами интеграции и приема данных, такими как Airbyte, Rivery или AWS AppFlow.
- Опыт работы с разговорным ИИ, речевыми/аудио системами или системами связи в реальном времени.
- Производственный опыт работы с Go, Rust, Scala или Kotlin.
- Вклад в open-source инфраструктурные проекты.