Full Stack Developer (JS+PHP) в команду по работе с данными сервиса путешествий

Зарплата

от 200 000 до 350 000 ₽

Местоположение и тип занятости

Полный рабочий деньМожно удаленно

Компания

Крупнейший сервис поиска, бронирования и покупки авиабилетов и ж/д билетов

Описание вакансии

Условия работы

Мы в Туту занимаемся путешествиями, у нас есть электрички, самолёты, поезда, автобусы, отели, туры и вообще всё, что нужно для того, чтобы куда-то уехать и вернуться. Кроме продуктовых команд есть ещё инфраструктурные, и вот Data Team — это мы, те, кто занимается платформой аналитики и инструментами для надежной и простой работы с Big Data. Используя эти данные, продуктовые аналитики и менеджмент выбирают направления развития нашего сервиса путешествий, а также мониторят критичные бизнес-показатели.

Сейчас мы ищем Full Stack Developer для того, чтобы развивать систему проведения АБ-тестов и в дальнейшем единую платформу для работы с данными в компании, обеспечивающую команды разработки всем необходимым для максимальной быстрой разработки, быстрого проведения экспериментов и достоверных выводов на основе данных.

Немного про стек:

— Несколько хранилищ, некоторые замещают старые: ClickHouse, Exasol, MariaDB, ElasticSearch, Redis;

— Очереди сообщений Kafka;

— Код упаковывается в Docker-образы и выкладывается через существующий CI/CD;

— Всё это едет в OpenShift или на Docker-хосты;

— Мониторинг Prometheus и Grafana;

— Сложную логику пишем на Python + некоторые сервисы написаны на PHP;

— Примерно 10% времени пишем на других языках вроде Javascript/Typescript для создания удобных инструментов для построения отчетов и визуализации результатов;

— Пишем оптимальные SDK для наших сервисов, которые встраиваются в production-код других команд.

Наш общий техрадар: https://www.tutu.ru/s/cPK4E/

Основные задачи:

  • Адаптация существующей системы АБ-тестов для обеспечения простой интеграции в текущие продукты;
  • Адаптация текущей системы для простого запуска АБ-тестов в мобильных приложениях и упрощения тестирования каждой новой АБ-кампании;
  • Создание новой версии интерфейса для исследования результатов АБ-кампаний с минимальными затратами времени;
  • Поддержка пользователей и, как следствие, снижение количества рутинных регулярно возникающих вопросов.

От вас нужно:

  • Уверенное знание JavaScript, в том числе опыт разработки под Node.JS;
  • Опыт разработки на PHP или Python от 2х лет;
  • Готовность разбираться с небольшими кусками кода на Golang или Python.

Про команду и рабочий процесс:

Задачи предварительно формулируются руководителем или системным аналитиком. Дальше проводится техническая аналитика, уточняются детали у постановщика и заказчика. Пишется план, обсуждается с командой, реализуется. На этой стадии ещё будут взаимодействия и с аналитиками, и с разработчиками команд. Набор проектов фиксируется на квартал, бьётся на спринты, планы по спринтам обсуждаются раз в две недели. 15-минутные стендапы каждый день, ретро по проектам, демо. Задачи проходят code review, если это код на долгие годы. Работаем в Bitbucket, Jira, Confluence и Miro.

График работы:

Работаем 5/2 в гибридном формате, иногда собираемся в офисе для командных встреч. Но можем рассмотреть вариант с полной удаленкой.

Про компанию:

— Компания с хорошим техническим стеком, техруководителями и готовностью одними из первых пробовать новые технологии;

— Сильный блог на Хабре, где пишут в том числе технари о своей работе;

— Хорошая техническая инфраструктура, очень крутая внутренняя база знаний, культура API и так далее;

— Открываются новые направления, где можно делать всё с нуля.

Весь положенный набор плюшек: ДМС со стоматологией, кухня в офисе, страховка на путешествия, ноутбук, премии по результатам работы, полная оплата больничных, регулярная переиндексация зарплаты, а также обучение, премия за прочитанные книги и обмен опытом.

Структура собеседований:

  • Пройти 30-минутный скрининг-знакомство с тимлидом;
  • Пройти HR-менеджера, 30 минут, сразу перед техсобеседованием. Никаких «кем вы видите себя через 5 лет»;
  • Встреча с командой и парой тех-спецов из других команд. Можно понять, достаточно ли профессиональна наша команда и комфортно ли вам с ней будет. Мы, в свою очередь, проверим ваши профессиональные знания и навыки);
  • Финальная встреча.