Наш продукт
Карты и Навигатор ежедневно помогают миллионам пользователей решать самые разные задачи в городе: находить места и строить к ним маршруты на любом транспорте, записываться в салоны красоты, вызывать такси.
Мы на этом не останавливаемся: проводим эксперименты, исследуем потребности пользователей, расширяем существующие сценарии и создаём новые. Например, не так давно запустили сверхподробную навигацию. А ещё стали предлагать пользователям комбинированные маршруты с проездом на такси и метро, добавили оплату парковок и электрозаправок. Всё это делает Карты и Навигатор мощными супераппами.
Как устроена разработка?
Мы сделали ставку на мультиплатформенную разработку: наши приложения на iOS и Android практически идентичны. Это позволяет везде поддерживать широкую функциональность и оптимизировать ресурсы.
Несколько лет назад мы выбрали Kotlin Multiplatform в качестве основной технологии для кросс-платформенной разработки и одними из первых начали применять её в продакшене. Kotlin Multiplatform не накладывает ограничений на использование платформенных SDK, мы пишем на нём только бизнес-логику, а UI и взаимодействие с операционной системой остаются платформенными.
Благодаря общему коду команды iOS и Android тесно контактируют, обмениваются знаниями. Для новых больших проектов мы собираем кросс-платформенные v-team, что упрощает контроль над процессами и совместные запуски. Об особенностях нашей мультиплатформенной разработки Михаил Куренков рассказывал в своём выступлении на Mobius 2020.
Проект Карт и Навигатора разбит на модули. Внутри модулей используем устоявшуюся «чистую» архитектуру с однонаправленным потоком данных. Feature-модули максимально независимы, что позволяет разрабатывать новые сценарии в отдельных легковесных тестовых проектах. Подробнее про модульность рассказывал Николай Лихогруд, а про тестовые проекты — Михаил Куренков.
Большой проект невозможно развивать без вложений в инфраструктуру. 80% времени мы тратим на продуктовую разработку, 20% выделяем на развитие технологий, автоматизацию рутины и отдачу техдолга. CI/CD, автоматическая синхронизация ресурсов от редакторов и дизайнеров, автоматизация жизненного цикла задач и релизного процесса, UI-тесты, A/B-эксперименты, мониторинги здоровья приложения и процессов — у нас есть всё необходимое.
Наш iOS-стек:
Наш Android-стек:
Вызовы
Главный продуктовый вызов — одновременное развитие сценариев выбора мест и навигации. Мы работаем над тем, чтобы в Картах можно было легко находить идеи, куда сходить, и строить оптимальные маршруты до выбранных мест на любом удобном пользователю транспорте.
Мы продолжаем прокачивать навигацию по сложным развязкам для автомобилистов и добавляем новые возможности для пешеходов и велосипедистов.
Хотим перейти на еженедельный цикл и выпускать обновления в два раза чаще. Прямо сейчас в разгаре большая перестройка процессов, оптимизация производительности приложения (времени старта, энергопотребления) и сборки, увеличение покрытия UI-тестами. Чтобы реализовать логику между платформами, используем Kotlin Native. Внедряем SwiftUI, экспериментируем с Tuist.
А ещё мы выводим продукты на международные рынки с учётом региональных особенностей и потребностей.
Что с атмосферой?
Любим обмениваться знаниями: регулярно проводим общие техновстречи всего отдела разработки, на которых рассказываем об интересных исследованиях и достижениях в разных технологических областях. Еженедельно собираемся платформенными командами и обсуждаем актуальные проблемы. По результатам спринта проводим продуктовые демо.
Уважаем work-life balance, тимбилдинг, неформальное общение, вечеринки, поддерживаем дружескую атмосферу. Преподаём в школах мобильной разработки и помогаем с выступлениями на конференциях. Возможно, вы видели наши доклады:
Расширенная медицинская страховка начинает работать с первого месяца в Яндексе. В неё входят стоматология, ежегодные чекапы, неотложная помощь за рубежом, лечение критических заболеваний, в том числе онкологии, и страхование от несчастных случаев.
Мы оплачиваем 80% стоимости ДМС для детей и супругов, вы — остальные 20%.
В Яндексе есть всё, чтобы постоянно развиваться и учиться новому: внутренняя образовательная платформа, менторство и программы для начинающих и опытных руководителей.
Кроме того, в Яндексе есть внутренние проекты, где наши сотрудники делятся экспертизой, обсуждают сложные темы и разбирают кейсы своих проектов.
Во всех крупных офисах Яндекса есть спортзалы со всем необходимым: тренажёрами, спортивным инвентарём, душевыми, шкафчиками для одежды и вещей.
Можете заниматься самостоятельно, а можете с корпоративным тренером.
В Яндексе есть спортивный клуб и много спортивных команд. У них есть свои лидеры, чаты, программы тренировок. А ещё они регулярно участвуют в забегах, триатлонах, «Гонке героев», футбольных и других соревнованиях.
Вы сможете присоединиться к существующим командам или собрать свою.
У нас нет фиксированного времени начала и конца рабочего дня — работайте так, как удобно вам и вашей команде.
Льготная ставка на покупку жилья и улучшение жилищных условий — в зависимости от стажа, позиции и результатов ревью. Действует для сотрудников, работающих в российских офисах Яндекса.
Страхование, детские дни в офисе, подарки на рождение детей и чекапы при планировании беременности.
Мы свяжемся с вами в течение недели.