IOS, Android - разработчик
до 150 000 ₽
О проекте
Мобильное 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
Сравнение со средней зарплатой в похожих вакансиях:
115k
189k
60k
275k
Опубликована 4 часа назад
Похожие вакансии
- Полный день
- Опыт от 1 года
- Москва
- Полный день
- Опыт от 1 года
- Москва
- Полный день
- Опыт от 1 года
- Москва
- Полный день
- Опыт от 1 года
- Москва
- Полный день
- Опыт от 1 года
- Москва
- Полный день
- Опыт от 1 года
- Москва