IOS, Android - разработчик

IOS, Android - разработчик

Москва, площадь Пречистенские Ворота, 1

Метро: Арбатская

Описание вакансии

О проекте

Мобильное OEM/white-label приложение: бонусная программа, маркетплейс, мессенджер, видео- и аудиозвонки на WebRTC, push-уведомления, оплата картой. Одна кодовая база на платформу собирается под несколько брендов. Кодовая база ~100k+ строк, 12+ интегрированных backend-сервисов.
А также другие приложения аналогичной тематики.


Чем предстоит заниматься

Развивать фичи: мессенджер, звонки, бонусы, маркетплейс, сертификаты, платежи и другие сервисы.
Чинить и оптимизировать критичные участки: стабильность WebSocket, жизненный цикл звонков, производительность длинных списков
Интегрировать новые backend-сервисы.
Поддерживать white-label сборки под разные бренды.
Работать с реалтайм-стеком: WebRTC, WebSocket, push (на iOS — APNs + VoIP-push)
Участвовать в код-ревью и развитии архитектуры.

Личные качества и подход к работе

Увлечённость продуктом. Не просто «закрываем тикеты», а живой интерес к тому, что делаем: сами пользуемся приложением, понимаем боль пользователей, предлагаем улучшения, замечаем баги и шероховатости до того, как их найдёт QA или пользователь.
Доступность и вовлечённость. Гибкий график, но при этом готовность оперативно включаться в критичных ситуациях (продакшен-инцидент, релиз, согласование на стыке iOS/Android/бэкенда), быть на связи в рабочих чатах и не «пропадать» надолго без предупреждения. Ценим людей, которые хотят быть в контексте.
Ответственность за результат. Доводим задачи до прода и наблюдаем, как они работают, а не «передали в QA — забыли».

Что мы ожидаем (общее для обеих платформ)

Коммерческий опыт мобильной разработки от 3 лет.
От 1,5 лет в продакшене на современном декларативном UI: Jetpack Compose или SwiftUI.
Уверенный язык платформы: Kotlin или Swift 5.7+ — корутины / async-await, structured concurrency, actors / @MainActor / main-dispatcher, отмена задач, thread-safety
HTTP-клиент платформы (Retrofit + OkHttp / URLSession): кастомные заголовки авторизации, несколько параллельных клиентов, refresh-токены, обработка ошибок и rate limiting
WebSocket в проде: переподключение с бэкоффом, heartbeat, обработка разрывов
Интеграция WebRTC для видео/аудио-звонков.
Push: регистрация и обработка в foreground / background / killed-state.
Безопасное хранение токенов (Keychain / DataStore), JWT/OAuth refresh-флоу, без логирования PII и токенов.
Сборки под несколько брендов из одного кода (Gradle Kotlin DSL / xcconfig), управление зависимостями (Gradle / CocoaPods)
Работа с адресной книгой
Работа с фото и файлами
Платежи и 3DS
Применение WebView
Combine / StateFlow на сложных реактивных пайплайнах

Android

Kotlin (official code style), Java 11
Jetpack Compose, Material 3 (без XML-вёрстки)
MVI, многомодульный Gradle (core/*, feature/*/api, feature/*/impl)
Koin (или другой DI с готовностью переучиться)
Retrofit 2.9, OkHttp 4.11, Kotlinx Serialization, кастомные Interceptor'ы
Compose Navigation, в том числе вложенные графы
Firebase Cloud Messaging + RuStore Messaging
Публикация в RuStore / Google Play/

iOS

Swift 5.7+, SwiftUI в продакшене + UIKit-интероп (UIViewRepresentable, UIViewControllerRepresentable)
Swift Concurrency: async/await, Task, actors, @MainActor, nonisolated; понимание разницы Task { } vs DispatchQueue.main.async vs MainActor.run vs assumeIsolated; базовый GCD
URLSessionWebSocketTask или Starscream, кастомный heartbeat
APNs + PushKit (VoIP push), CallKit (CXProvider, CXCallController), обработка didActivate / didDeactivate audioSession
AVAudioSession (.playAndRecord, порты), AVCaptureDevice, разрешения на микрофон / камеру
Keychain (KeychainAccess или Security framework), биометрия, ATS, certificate pinning (плюс)
CocoaPods, xcconfig для OEM-сборок
Instruments (Time Profiler, Allocations, Leaks, Network), символикация и .dSYM, os_log / OSLog
Публикация в App Store/


Будет плюсом

Интеграция аналитики и crash-reporting: Firebase, AppMetrica, Sentry

Ключевые навыки (теги для hh.ru)
Kotlin, Swift, iOS, Android, Jetpack Compose, SwiftUI, Coroutines, Swift Concurrency, MVI, WebRTC, WebSocket, Retrofit, OkHttp, URLSession, CallKit, PushKit, APNs, FCM, Keychain, CocoaPods, Gradle, Koin, Git, Material 3, UIKit, AVFoundation

Посмотреть контакты работодателя

Адрес

Похожие вакансии

МТС
  • Москва

  • Не указана

Рекомендуем
Амбрелла
  • Москва

  • Не указана

Рекомендуем
КСОР
  • Москва

  • Не указана

Рекомендуем
АО «ОТП Банк» (JSC «OTP Bank»)

IOS-разработчик (Premium&Private)

АО «ОТП Банк» (JSC «OTP Bank»)

  • Москва

  • Не указана

Центр Новых Финансовых Сервисов

IOS-разработчик

Центр Новых Финансовых Сервисов

  • Москва

  • Не указана

Разработчик Kotlin/Scala

Васильев Роман Андреевич

  • Москва

  • Не указана

Яндекс
  • Москва

  • Не указана

Защищенные Телекоммуникации

Android-разработчик

Защищенные Телекоммуникации

  • Москва

  • Не указана

Яндекс
  • Москва

  • Не указана

Бизнес Совет

React Native разработчик

Бизнес Совет

  • Москва

  • до 160000 RUR

АО «ОТП Банк» (JSC «OTP Bank»)

IOS developer (Трайб POS)

АО «ОТП Банк» (JSC «OTP Bank»)

  • Москва

  • до 160000 RUR

Амбрелла
  • Москва

  • до 160000 RUR

Медиа Эффект

Android (kotlin)-разработчик

Медиа Эффект

  • Москва

  • до 250000 RUR

Web-разработчик (Fronted/Backend)

Креативное объединение 33

  • Москва

  • до 110000 RUR

Клауд Ком

Java-разработчик

Клауд Ком

  • Москва

  • до 110000 RUR

DDPlanet
  • Москва

  • до 110000 RUR

Хотите оставить вакансию?

Заполните форму и найдите сотрудника всего за несколько минут.
Оставить вакансию