Разработчик для iOS в Карты и Навигатор
28 Октября 2024
Город:
Сочи
Занятость:
Полная занятость
Компания "Яндекс"
Наш продукт
Карты и Навигатор ежедневно помогают миллионам пользователей решать самые разные задачи в городе: находить места и строить к ним маршруты на любом транспорте, записываться в салоны красоты, вызывать такси.
Мы на этом не останавливаемся: проводим эксперименты, исследуем потребности пользователей, расширяем существующие сценарии и создаём новые. Например, не так давно запустили сверхподробную навигацию. А ещё стали предлагать пользователям комбинированные маршруты с проездом на такси и метро, добавили оплату парковок и электрозаправок. Всё это делает Карты и Навигатор мощными супераппами.
Как устроена разработка?
Мы сделали ставку на мультиплатформенную разработку: наши приложения на iOS и Android практически идентичны. Это позволяет везде поддерживать широкую функциональность и оптимизировать ресурсы.
Несколько лет назад мы выбрали Kotlin Multiplatform в качестве основной технологии для кросс-платформенной разработки и одними из первых начали применять её в продакшене. Kotlin Multiplatform не накладывает ограничений на использование платформенных SDK, мы пишем на нём только бизнес-логику, а UI и взаимодействие с операционной системой остаются платформенными.
Благодаря общему коду команды iOS и Android тесно контактируют, обмениваются знаниями. Для новых больших проектов мы собираем кросс-платформенные v-team, что упрощает контроль над процессами и совместные запуски. Об особенностях нашей мультиплатформенной разработки Михаил Куренков рассказывал в своём выступлении на Mobius 2020.
Проект Карт и Навигатора разбит на модули. Внутри модулей используем устоявшуюся «чистую» архитектуру с однонаправленным потоком данных. Feature-модули максимально независимы, что позволяет разрабатывать новые сценарии в отдельных легковесных тестовых проектах. Подробнее про модульность рассказывал Николай Лихогруд, а про тестовые проекты — Михаил Куренков.
Большой проект невозможно развивать без вложений в инфраструктуру. 80% времени мы тратим на продуктовую разработку, 20% выделяем на развитие технологий, автоматизацию рутины и отдачу техдолга. CI/CD, автоматическая синхронизация ресурсов от редакторов и дизайнеров, автоматизация жизненного цикла задач и релизного процесса, UI-тесты, A/B-эксперименты, мониторинги здоровья приложения и процессов — у нас есть всё необходимое.
Какой у нас стек:
- iOS 15+, Swift 5.9, Kotlin Multiplatform
- UIKit, SwiftUI
- RxSwift, Kotlin Coroutines/Flow
- MVI/MVVM, Redux
- Fastlane, SwiftLint
- UI-тесты на XCTest & Allure
- Модульность на Cocoapods
Вызовы
Главный продуктовый вызов — одновременное развитие сценариев выбора мест и навигации. Мы работаем над тем, чтобы в Картах можно было легко находить идеи, куда сходить, и строить оптимальные маршруты до выбранных мест на любом удобном пользователю транспорте.
Мы продолжаем прокачивать навигацию по сложным развязкам для автомобилистов и добавляем новые возможности для пешеходов и велосипедистов.
Хотим перейти на еженедельный цикл и выпускать обновления в два раза чаще. Прямо сейчас в разгаре большая перестройка процессов, оптимизация производительности приложения (времени старта, энергопотребления) и сборки, увеличение покрытия UI-тестами. Чтобы реализовать логику между платформами, используем Kotlin Multiplatform. Внедряем SwiftUI, экспериментируем с Tuist.
А ещё мы выводим продукты на международные рынки с учётом региональных особенностей и потребностей.
Что с атмосферой?
Любим обмениваться знаниями: регулярно проводим общие техновстречи всего отдела разработки, на которых рассказываем об интересных исследованиях и достижениях в разных технологических областях. Еженедельно собираемся платформенными командами и обсуждаем актуальные проблемы. По результатам спринта проводим продуктовые демо.
Уважаем work-life balance, тимбилдинг, неформальное общение, вечеринки, поддерживаем дружескую атмосферу. Преподаём в школах мобильной разработки и помогаем с выступлениями на конференциях. Возможно, вы видели наши доклады:
Мы ждем, что вы
- Разрабатывали мобильные приложения для iOS и глубоко знаете SDK-платформы
- Умеете прорабатывать задачи от и до, имеете продуктовое мышление, стремитесь улучшать жизнь пользователей
- Знаете современные принципы построения архитектуры мобильных приложений
- Готовы совершенствовать процессы и инфраструктуру разработки
Зарегистрируйтесь или войдите, чтобы открыть контакты работодателя
Прикрепите резюме для отклика
Уже с нами?
Войдите, чтобы отправить резюме
05 Ноября
PHP-разработчик( Группа Компаний Бико )
Краснодар
от 160 000 до 180 000 руб.
Компания "Группа Компаний Бико" BiCo – аккредитованная IT-компания. Работаем более 19 лет. За это время мы стали компанией-лидером в...
05 Ноября
Web-разработчик (Bitrix-разработчик)
Краснодар
от 70 000 руб.
Компания "Комкад" В динамично развивающуюся и дружную компанию ООО «ПРОСТО», которая занимается разработкой сайтов различной сложности,...
06 Ноября
Краснодар
от 70 000 до 78 000 руб.
Компания "SGS Vostok Limited" При отклике на вакансию, пожалуйста, указывайте Ваши зарплатные ожидания ОБЯЗАННОСТИ: Составление...
06 Ноября
Разработчик Full Stack Битрикс24( Газпром бурение )
Краснодар
Компания "Газпром бурение" Обязанности Развитие функционала Корпоративного портала, мобильного PWA приложения: разработка новых функций,...
06 Ноября
Сочи
от 300 000 руб.
Компания "Алабуга, ОЭЗ ППТ" НЕОБХОДИМ ПЕРЕЕЗД В РЕСПУБЛИКУ ТАТАРСТАН, ФОРМАТ РАБОТЫ ОЧНЫЙ Обязанности: Решение сложных инцидентов и проблем...
Вакансия размещена в отрасли