Мобильная
разработка

Рассказываем, как у нас всё устроено
в Яндекс 360

Мобильная
разработка
в Яндекс 360 —
это пространство,
где мы:

Любим наших пользователей
Мобильные приложения —
это точка входа в Яндекс  360. Поэтому мы внимательно изучаем отзывы из магазинов приложений и обращения в поддержку, формируя на их основе наши задачи. Считаем, что эмпатия к пользователю важна для любого мобильного разработчика
Создаём технологии
Качество кода, продуманная архитектура и глубокие знания технологий  —  это важные атрибуты нашей команды. Руководители тоже пишут код, читают пул-реквесты и участвуют в технических дискуссиях
Заботимся друг о друге
Строим коммуникацию на честности и прозрачности: делимся трудностями, прислушиваемся друг к другу, открыто даём и принимаем обратную связь. Это помогает нам лучше понимать коллег и профессионально расти
Непрерывно развиваемся
Ходим на конференции, проводим воркшопы и делимся экспертизой с коллегами на ежемесячном «Мобильном Немитапе», а наши деврелы с радостью помогут превратить вашу идею в доклад, подкаст или статью

Команды

Яндекс Почта

Почта — это сложное приложение с приоритетом на работу в офлайн-режиме. Мы уделяем много внимания синхронизации данных: плохой или отсутствующий интернет нам не помеха. Добавляем новые виджеты, онбординги и экраны. Все изменения продиктованы пользовательскими задачами. Например: управление нотификациями не только Почты, но и других сервисов Яндекс 360

Яндекс Диск

Работаем над алгоритмами синхронизации данных, интеграцией с возможностями операционной системы, вёрсткой сложных визуальных компонентов, а также обработкой фото и видео

Яндекс Телемост

Разрабатываем решения для обработки видео и звука в реальном времени, создаём красивые и отзывчивые UI-компоненты, а также работаем с техническими вызовами архитектуры взаимодействия модулей чатов и звонков

Яндекс Мессенджер

Мессенджер — это сложное приложение с приоритетом на работу в офлайн-режиме, которое не боится плохого соединения или его отсутствия. Также это встраиваемый SDK с жёсткими требованиями к размеру, потреблению памяти и количеству зависимостей

Яндекс Календарь

Помимо приложения, мы предлагаем SDK с полной функциональностью для быстрой интеграции в сторонние продукты. Используем современный стек без легаси: iOS — SwiftUI/SwiftData, Android — Compose Multiplatform. Обеспечиваем корректную синхронизацию и точную обработку часовых поясов — события всегда отображаются в нужном времени

Платформенная команда

Команда платформы занимается развитием инструментов и общих стандартов для всех команд мобильной разработки в Яндекс 360. Наша миссия — сделать разработку быстрее, современнее и комфортнее.

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

Технологии
и подходы к разработке

iOS
  • Swift, SwiftUI, UIKit
  • SPM, Fastlane — управляем зависимостями и автоматизируем CI/CD
  • Пишем Unit-, UI-, Snapshot-тесты
  • Работаем с многопоточностью Swift Concurrency
Android
  • Kotlin, Compose, View
  • Работаем с многопоточностью Kotlin Coroutines
  • OkHttp, WebSocket, Protobuf, Room, Dagger 2 и многое другое
  • Пишем UI- и unit-тесты — Espresso, Robolectric, JUnit
  • Используем все основные технологии из индустрии и создаём собственные
  • Применяем гибкие подходы к разработке
  • Не забываем про базовые принципы проектирования: KISS, DRY, YAGNI, но применяем их с умом

Почему у нас классно

Не боимся нового
Не боимся нового
Пробуем новые технологии и оставляем их только там, где они реально работают. Используем ИИ для ревью кода, чтобы повышать его качество, и для генерации тестов, чтобы увеличить процент покрытия тестами
Техплатформа
Техплатформа
Развиваем общую CI/CD-платформу для мобильных команд: автоматизируем релизный цикл, унифицируем процессы и снижаем ручную работу. Отслеживаем изменения в проектах, запускаем нужные сборки и упрощаем миграции на новые технологии
Собственная дизайн-система
Собственная дизайн-система
Развиваем и поддерживаем дизайн-систему Орбита, чтобы разработчики тратили меньше времени на UI. Даём готовые компоненты с понятным поведением, а команда платформы следит за их актуальностью, удобством и сложностью
Доступность по умолчанию
Доступность по умолчанию
Accessibility встроена в дизайн-систему и масштабируется на все приложения. Улучшаем работу компонентов со скринридерами и дорабатываем систему по запросам продуктовых команд, обеспечивая удобство для всех пользователей
Прозрачность
Прозрачность
Внутренняя документация и общедоступные метрики позволяют каждому видеть, почему принимаются те или иные решения
Мобильное комьюнити
Мобильное комьюнити
Мы часто встречаемся вне рабочих задач: играем в настолки, смотрим фильмы и WWDC, делимся знаниями и поддерживаем друг друга

Орбита —
дизайн-система
Яндекс 360

Единая библиотека компонентов шаблонов и инженерных
решений, на которой построены все продукты Яндекс 360 —
от Почты и Диска до Телемоста и Мессенджера

Мы развиваем архитектурную базу для всех мобильных
приложений Яндекс 360 на iOS и Android
  1. Нативные компоненты на SwiftUI и Jetpack Compose с единой архитектурой
  2. Универсальные токены
    для размеров, цветов и шрифтов, синхронизированные
    между платформами
  3. Поддержка уникальных для каждого приложения цветовых тем и возможность быстро их менять
  4. Кодогенерация интерфейсов прямо из Figma через плагин
  5. Единые UX-принципы и гайдлайны, обеспечивающие seamless-опыт между всеми сервисами

Орбита объединяет визуальные
и технические паттерны

всех сервисов Яндекс 360,
сокращая
путь от идеи
до продакшена

Техножурнал

Наши эксперты рассказывают о технологиях и работе команды
Реактивный Swift Concurrency
Башир Арсланалиев
Руководитель разработки iOS-приложения Телемоста
Как мы упростили компонент из 272 миллионов комбинаций в общей дизайн-системе: опыт Яндекс 360
Дмитрий Мандельштам
Мобильный разработчик в платформенной команде
Алексей Карпенко
Руководитель команды дизайн-системы
Осторожно, Combine!
Никита Конашенко
Мобильный разработчик
Как проходит архитектурная секция в команду мобильной разработки Яндекс 360
Михаил Буравлев
Руководитель службы мобильной разработки
Виктор Брыксин
Руководитель службы технического управления сервисами

Создавайте технологии продуктов, которыми пользуются миллионы,
и работайте в команде
c сильной инженерной культурой