8 ноября 2024
Привет! Туту это самый посещаемый онлайн-сервис путешествий в России (SimilarWeb, 2023), где можно купить билеты на поезд, самолёт и автобус, забронировать отели, найти расписание электричек, выбрать тематические туры и туристические путёвки, экспедиции и экскурсии. Туту работает с 2003 года и занимает 1-е место в России, а также 25-е место в мире по количеству посетителей в тематике путешествие и туризм.
Кроме продуктовых команд в Туту есть ещё и инфраструктурные, и вот Core Mobile это мы, те, кто упрощает жизнь мобильным разработчикам и тестировщикам из продуктовых команд. Мы формируем и внедряем общие правила архитектуры и код-стайла, разрабатываем инструменты автоматизации, настраиваем CI/CD и ускоряем сборки, собираем метрики процесса разработки и помогаем коллегам работать над продуктовыми задачами эффективнее.
Сейчас в поисках Android-разработчика, который возьмёт на себя задачи, связанные с созданием и поддержкой инструментов для мобильной разработки в Туту.
Немного про стек
Основной язык Kotlin.
Kotlin Coroutines / Flow для асинхронной работы.
Для DI используем Dagger 2 с Component Dependencies.
Новый UI только на Compose + дизайн-система на Compose.
Gradle для сборки проекта + Gradle KTS + Convention Plugins.
Для CI/CD используем GitHub Actions + Self-Hosted Runners.
Kaspresso для UI-тестов + собственный инструмент для скриншот-тестов.
Многомодульная архитектура, на уровне фичей используем MVVM/MVI-паттерны.
Живём в мультирепозиториях.
Miro как инструмент проектирования, планирования и синхронизаций процессов.
Jira как инструмент планирования, интеграций и ведения проектов.
Основные задачи
Развитие и поддержка сервисов телеметрии, А/B-тестинга, аналитики.
Разработка и унификация роутинга/навигации/диплинков.
Ускорение сборок / Архитектура проекта / DI.
Внедрение и развитие контроля качества / производительности / систем мониторинга.
Развитие и поддержка core-продуктов (Test DSL, CI/CD, Danger, mock-system и др.).
Внедрение и разработка общих модулей на KMP (Kotlin multiplatform).
Решение задач от отдела безопасности (ИБ).
Выполнение операционной работы по саппорту клиентов разработчиков и внешних подразделений.
От вас нужно
Опыт разработки на платформе Android от 4 лет.
Знание особенностей многомодульных проектов и умение выстраивать связи между модулями.
Опыт проектирования инструментов с нуля и до прода.
Понимание Semantic Versioning и способов организации зависимостей.
Понимание принципов работы DI (в частности Dagger 2).
Умение писать обратно совместимый код, которым будут пользоваться другие разработчики.
Умение работать с Gradle и писать кастомную билд-логику.
Опыт использования Coroutines/Flow.
Опыт командной разработки, знание инструментов (Jira, Git).
Плюсом будет знание Kotlin Multiplatform.
П ро команду и рабочий процесс
В Mobile Core команде есть TeamLead и лиды по направлениям iOS, Android; Mobile DevOps и QA.
Как организован процесс работы:
Работаем по Scrum.
Большие задачи обязательно прорабатываем заранее, иногда вместе с другими разработчиками и экспертами.
Сейчас в Туту 14 команд. Core-команда парит над всеми командами и в курсе происходящего везде.
График работы
У нас возможна полная удалёнка, возможен гибрид.
Про компанию
Компания с хорошим техническим стеком, техруководителями и готовностью одними из первых пробовать новые технологии.
Сильный блог на Хабре, где пишут в том числе технари о своей работе.
Хорошая техническая инфраструктура, очень крутая внутренняя база знаний, культура API и так далее.
Открываются новые направления, где можно делать всё с нуля.
Весь положенный набор плюшек: ДМС со стоматологией, кухня в офисе, страховка на путешествия, ноутбук, премии по результатам работы, оплата больничных, регулярная переиндексация зарплаты, а также обучение, премия за прочитанные книги и обмен опытом.
Структура собеседований
Пройти HR-менеджера. Никаких кем вы видите себя через 5 лет .
Встреча с парой техспецов. Мы проверим ваши профессиональные знания и навыки.
Вы в свою очередь сможете понять достаточно ли профессиональна наша команда и комфортно ли вам с ней будет.
Финальная встреча с руководителем.