Что нужно делать
- управлять командой разработчиков: декомпозировать и распределять задачи, определять приоритеты, контролировать сроки и качество выполнения;
- оценивать трудоёмкость задач, анализировать техническую реализуемость решений и участвовать в формировании планов разработки;
- нести ответственность за технический результат команды, качество решений и выполнение согласованных планов;
- участвовать в проектировании, разработке и развитии компонентов распределённых систем;
- проводить R&D-исследования и готовить PoC-решения;
- взаимодействовать с TPM, архитекторами и другими командами для определения технических решений, стратегии и планов развития продуктов;
- заниматься разработкой программного обеспечения (ПО) в соответствии с функциональными спецификациями (техническим заданием);
- выявлять и устранять сбои, узкие места и проблемы производительности в распределённых и высоконагруженных системах;
- работать с кодом крупных open-source проектов: исследовать внутреннее устройство компонентов, диагностировать проблемы и вносить необходимые изменения;
- проводить и организовывать code review;
- обеспечивать необходимый уровень тестирования: писать unit-тесты и, при необходимости, интеграционные тесты;
- участвовать в построении и совершенствовании процессов разработки внутри команды;
- обеспечивать прозрачность работы команды, своевременно информировать заинтересованные стороны о статусе задач, рисках и изменениях планов;
- развивать разработчиков внутри команды: проводить техническое наставничество, помогать с профессиональным ростом и распространением экспертизы;
- участвовать в подборе команды;
- организовывать накопление экспертизы, вести и поддерживать в актуальном состоянии документацию разработки и базу знаний.
Мы ждем, что вы
- имеете опыт управления командой разработки в роли Team Lead от 2 лет и от 4 лет в роли Senior Java Developer;
- продолжаете самостоятельно работать с кодом и готовы глубоко погружаться в технические задачи команды;
- хорошо знаете Java, ООП, SOLID, алгоритмы и структуры данных, понимаете многопоточность и concurrency;
- имеете глубокий практический опыт разработки и эксплуатации распределённых и высоконагруженных систем;
- имеете практический опыт работы с экосистемой Apache Hadoop, принципы распределённого хранения, управления ресурсами и отказоустойчивости;
- хорошо понимаете Apache Spark: архитектуру, модель выполнения приложений, управление ресурсами и основные механизмы оптимизации;
- хорошо понимаете Apache Kafka: архитектуру, масштабирование, производительность и отказоустойчивость;
- умеете диагностировать сложные проблемы распределённых систем: анализировать логи и метрики, находить первопричины сбоев и узкие места производительности, аргументировать и реализовывать необходимые улучшения;
- понимаете основные механизмы безопасности, High Availability и восстановления распределённых систем после сбоев;
- имеете опыт JVM profiling и диагностики проблем CPU, memory, GC, I/O, heap dump;
- умеете читать и модифицировать код крупных open-source проектов и быстро разбираться в незнакомой кодовой базе;
- имеете опыт написания unit- и интеграционных тестов, работы с Maven, Linux и CI/CD;
- умеете проводить качественный code review, декомпозировать сложные задачи, принимать технические решения и нести ответственность за результат команды.
Будет плюсом
- опыт эксплуатации Hadoop, Spark и Kafka в production-среде;
- глубокое понимание внутреннего устройства HDFS, YARN и Kafka;
- опыт работы с HBase, Hive, Ozone, NiFi, Flink, Trino, Impala или Iceberg;
- опыт работы с Kafka Connect, Kafka Streams, Schema Registry, ZooKeeper;
- опыт работы с Kerberos, SASL/SSL, ACL и другими механизмами безопасности распределённых систем;
- опыт разработки или существенной доработки крупных open-source проектов;
- опыт работы с Docker и Kubernetes.
Этапы собеседования
Беседа с рекрутером.
Тестовое задание (опционально, в зависимости от должности).
Техническое интервью или интервью с экспертом (может быть несколько этапов).
Оффер – приглашение на работу.
Заботимся о команде
- Расширенный ДМС со стоматологией и телемедициной с первого месяца работы.
- Страхование жизни сотрудника.
- Программа ДМС онкострахования (компенсируется в размере 50%).
- 100% покрытие больничного листа (независимо от стажа работы в компании, до 21 дня в году).
- Страхование от несчастных случаев.
- Программа ДМС для детей (компенсируется в размере 50%) и льготные условия для близких.
- Полис для выезжающих зарубеж.
- Оборудование для работы (ноутбук, монитор).
- Техническое обучение нашим продуктам в собственном Учебном центре.
- Реферальная программа – возможность получить бонус за успешную рекомендацию.
- Возможность зарабатывать внутреннюю валюту ArenaCoins за различные достижения и тратить её в онлайн-магазине компании.
- Платформа скидок Best Benefits – скидки и специальные предложения на спорт, обучение, товары и услуги партнёров.
- Возможность участия в клубах и сообществах по интересам: клуб изучения английского языка, книжный клуб, киноклуб, сообщества спортсменов и др.
- No Meeting Day (четверг) для технической дирекции — минимум встреч, максимум кода.
Чем мы занимаемся
Команда Технической дирекции разрабатывает распределённые СУБД и компоненты единой платформы данных Arenadata. Мы развиваем и интегрируем Open Source технологии, добавляя функциональность для промышленной эксплуатации, безопасности, отказоустойчивости и управления кластерами.
В команде архитекторы, технические менеджеры продуктов, бэкенд и фронтенд разработчики, QA-инженеры, DevOps, дизайнеры, инженеры по разработке документации и др.
Подпишитесь на нашу рассылку
Отправляем только самое интересное 1 раз в месяц.