Описание вакансии
Задачи:
— Разработка Android-функциональности нового AI-продукта мобильного приложения.
— Реализация экранов и пользовательских сценариев с использованием Kotlin и современного Android-стека.
— Развитие переиспользуемых Android-компонентов, библиотек и SDK для ускорения внедрения функциональности.
— Работа с чатом и ИИ-помощником: асинхронные ответы, история сообщений, загрузка документов, обработка ошибок и запасных сценариев.
— Разработка UI для риск-профиля и медицинских данных, включая анкеты, карточки, графики, объяснения, доверия и согласия.
— Интеграция с backend/API, авторизацией, аналитикой, фича-флагами и системами наблюдаемости.
— Участие в развитии многомодульной архитектуры Android-приложения и разграничении слоев feature/platform/core.
— Оптимизация CI/CD, Gradle-конфигураций и скорости сборки для улучшения поставки команды.
— Учет ограничений мобильных релизов: обратная совместимость, поэтапный раскат, регрессии, поддержка разных версий Android.
— Написание тестируемого кода, участие в код-ревью, декомпозиции и обсуждении API-контрактов.
— Работа в кросс-функциональной команде с Product, Backend, iOS, QA, SA, Design и ML.
Требования:
— Уверенное владение Kotlin.
— Опыт работы с Kotlin Coroutines и Flow, включая SharedFlow, StateFlow, операторы, scopes, lifecycle, отмену, структурированную конкуренцию и обработку ошибок.
— Знание архитектуры Android-приложений: Clean Architecture, UDF/MVI/TEA или близких подходов, separation of concerns.
— Опыт работы с Jetpack Compose и понимание взаимодействия с legacy View.
— Навыки навигации, управления состоянием и работы с UI-состояниями загрузки, пустого экрана, ошибок и контента.
— Опыт работы с сетевым слоем: REST, авторизация/сессия, повторы запросов, маппинг ошибок, работа в условиях отсутствия или плохой сети.
— Знание локального хранения и кэширования: Room, DataStore, SharedPreferences или аналогов.
— Понимание многомодульных Android-проектов, влияния модулей на время сборки, границ API, подхода `api/impl` и изоляции зависимостей.
— Опыт работы с Gradle: конфигурации зависимостей, различия `implementation` и `api`, version catalogs, основы convention plugins.
— Опыт работы с CI/CD для Android: сборки, проверки, тесты, артефакты, ускорение обратной связи.
— Знание жизненного цикла мобильного продукта: push-уведомления, диплинки, разрешения, аналитика, crash reporting.
— Навыки тестирования: unit-тесты для ViewModel/use cases/services, UI-тесты приветствуются.
— Готовность к релизу: фича-флаги, обратная совместимость, поэтапный раскат, регрессионные проверки.
— Умение работать в команде с Backend, ML, Product, QA, SA, iOS и Design.
Будет плюсом:
— Опыт работы с consumer health/medtech/wellness приложениями.
— Знание UX чата/помощника, потоковых ответов, голосовых функций, работы с файлами и загрузками.
— Опыт работы с графиками, визуализацией данных и UX для чувствительных данных.
— Навыки наблюдаемости: Sentry, Firebase Crashlytics, AppMetrica, Grafana или аналоги.
— Опыт оптимизации производительности Android: время запуска, ANR, лаги, память, оптимизация сети.
— Опыт профилирования и поиска утечек памяти.
— Опыт работы с модульной архитектурой, общими библиотеками, SDK и дизайн-системами.
— Опыт написания Gradle-плагинов или настройки Android CI/CD с нуля.
— Практический опыт ИИ-помощи в разработке с дисциплиной код-ревью.
— Базовое понимание LLM, RAG и agentic-сценариев на уровне интеграции клиента с backend/ML.
Условия:
— Возможность работать удалённо по России или в офисе в Москве.
— Медицинская программа, включающая телемедицинские консультации, очные приёмы, психологов, стоматологию, лабораторные и инструментальные диагностики.
— Оплачиваемые курсы английского языка.
— Корпоративный ноутбук.
— Компенсация спортивного абонемента.
— Оплата профильного обучения и курсов через СберУниверситет.
— Поддержка участия и выступлений на профильных конференциях.
— Работа в крупной Digital Health платформе с командой из 360+ IT специалистов из 40+ городов.
География работы: Москва, возможна удалённая работа по России.