Оплата не указана
Вакансия находится в архиве
Требуемый опыт работы
От 3 до 6 лет
Тип занятости
Полная занятость
График работы
Гибкий график
Карты и Навигатор ежедневно помогают миллионам пользователей по всему миру решать свои задачи. Найти ресторан или дорогу до места встречи с друзьями, запланировать поход в салон красоты, построить максимально эффективный маршрут на любом типе транспорта или просто узнать, что интересного есть в городе, — наши базовые сценарии, жизненно необходимые современному городскому жителю.
Мы не стоим на месте: проводим эксперименты, исследуем потребности пользователей, расширяем возможности существующих сценариев и создаём новые. За последнее время добавили поддержку AndroidAuto, новый виджет, аренду самокатов, заказ такси, доставку еды. Карты и Навигатор превратились в мощный геосуперапп.
Как устроена разработка?
Важная часть нашего подхода — ставка на мультиплатформенную разработку. Наши приложения на iOS и Android практически идентичны, а функционал настолько разнообразен и обширен, что поддерживать одновременно две реализации трудно и неэффективно. Несколько лет назад мы выбрали KotlinMultiplatform в качестве основной технологии для кросс-платформенной разработки и одними из первых начали использовать её в продакшен. KotlinMultiplatform не накладывает ограничений на использование платформенных SDK, мы пишем на нём только бизнес-логику, а UI и взаимодействие с операционной системой остаются платформенными, что позволяет использовать актуальный стек на Android и iOS. За эти годы мы прошли огромный путь, и сейчас общий код составляет значимую часть нашей кодовой базы. Благодаря этому команды Android и iOS тесно контактируют, обмениваются знаниями, а под новые большие проекты мы сразу собираем кросс-платформенные v-team, что упрощает контроль над процессами и совместные запуски.
Наш проект разбит на модули, что улучшает архитектуру и позволяет разрабатывать новые сценарии в отдельных легковесных тестовых проектах. Внутри модулей используем архитектуру Redux с Unidirectional Data Flow.
Большой проект невозможно развивать без вложений в инфраструктуру. 80% времени мы тратим на продуктовую разработку, 20% времени выделяем на развитие технологий, автоматизацию рутины и отдачу техдолга. CI/CD, автоматическая синхронизация ресурсов от редакторов и дизайнеров, автоматизации workflow задач, автоматизации релизного процесса, UI-тесты, A/B-эксперименты, мониторинги здоровья приложения и процессов — у нас есть всё необходимое для проекта такого уровня.
Какой у нас стек Android?
Вызовы
Главный продуктовый вызов — одновременное развитие сценариев выбора мест и навигации. Мы работаем над тем, чтобы в Картах можно было легко находить идеи, куда сходить, и строить оптимальные маршруты до выбранных мест на любом удобном пользователю транспорте.
Продолжаем прокачивать навигацию по сложным развязкам для автомобилистов и добавляем новые возможности для пешеходов и велосипедистов. Хотим перейти на еженедельный цикл и выпускать обновления в два раза чаще.
У нас идёт большая перестройка процессов, расширение покрытия UI-тестами, оптимизация сборки и производительности приложения: энергопотребления и времени старта. Чтобы реализовать логику между платформами, используем Kotlin Multiplatform. Активно внедряем Compose.
А ещё мы выводим продукты на международные рынки с учётом региональных особенностей и потребностей.
Что по атмосфере?
Много внимания уделяем обмену знаниями: раз в месяц проводим общие «техновстречи» на всю разработку, на которых рассказываем про интересные исследования и достижения в разных технологических областях, еженедельно собираемся платформенными командами и обсуждаем насущные проблемы. По результатам спринта проводим продуктовые демо. Уважаем work-life balance, тимбилдинговые активности, неформальное общение, вечеринки, поддерживаем дружескую атмосферу. Приветствуем участие в школах мобильной разработки в качестве преподавателей, помогаем с выступлениями на конференциях.
Возможно, вы уже видели наши доклады и статьи:
Евгений Васильев на Я.Субботнике рассказывает про то, как собираем грабли при профилировании Android-приложений.
Михаил Куренков рассказывает на Mobius 2020 про процессные особенности мультиплатформенной разработки.
Дмитрий Яковлев рассказывает на AppsLive 2020, как концептуально выглядит типичная фича на Kotlin Multiplatform.
Денис Загаевский рассказывает на Mobius 2021 про наш DI.
Мы ждем, что вы:
Условия:
Ключевые навыки
Контактная информация
Яндекс
Сайт: не указан
Почта: не указана
Вакансия опубликована 01.08.2024 в г. Москва.
Похожие вакансии
Не указана
Москва
Полный день
Подробное описание
10 июля
Не указана
Москва
Полный день
Подробное описание
23 июля
от 145 000 до 145 000 ₽
Красноярск
Полный день
Подробное описание
17 апреля