Мы - Компания IT_One, стратегический партнер по цифровизации российского бизнеса и государственных органов. Наша команда реализует крупнейшие проекты цифровой трансформации. Собрали большую команду, в которой сочетаются профессионализм, опыт и молодость. Более 2500 сотрудников. Офисы в Москве, Санкт-Петербурге и Омске.
Сейчас мы находимся в поиске Android разработчика в проект для нашего заказчика - лидера в девелопменте жилой и коммерческой недвижимости. Компания работает на российском рынке с 2003 года и является одной из крупнейших по объему строительства и продаж жилой и коммерческой недвижимости в России.
Обязанности
Мы ищем опытного Android-разработчика для участия в развитии сложного и масштабного много-модульного проекта.
Язык и платформа:
- Kotlin 2.0.20 (100% Kotlin, Java отсутствует)
- Java 17 (JVM target)
- Min SDK 26 (Android 8.0) / Target SDK 35 (Android 15)
Архитектура:
- Clean Architecture — чёткое разделение на слои: domain, repository, datasource, feature, common
- MVVM — ViewModel + Kotlin Flow (StateFlow/SharedFlow), LiveData (в legacy-UI)
- Многомодульный проект — ~100+ Gradle-модулей, feature-модули разделены на api/impl (инверсия зависимостей)
- Навигация через Cicerone (Router/Navigator/Screen)
- Паттерн feature-модулей с собственными Koin scope
Стек приложения:
DI (Dependency Injection)
- Koin 3.5.0 (без Hilt/Dagger)
- Scoped DI через Koin scopes на уровне Fragment
Сеть
- Retrofit 2.11.0 + OkHttp 4.12.0
- Moshi 1.14.0 (JSON-сериализация с кодогенерацией через KSP)
- Chucker 4.0.0 (HTTP-инспектор для debug/stage)
- PersistentCookieJar для управления куками
- Mock-сервер для тестов (OkHttp MockWebServer)
Хранение данных
- DataStore Preferences
- SharedPreferences (через datasource:preferences)
- Security Crypto (EncryptedSharedPreferences)
UI
- XML Views + ViewBinding (Jetpack Compose не используется)
- Material Design Components 1.8.0
- RecyclerView + AdapterDelegates 4.3.2
- ConstraintLayout, SwipeRefreshLayout, ViewPager2
- Glide 4.15.1 (загрузка изображений)
- Shimmer (Facebook) — скелетоны загрузки
- BlurView, PhotoView, Markwon (рендеринг Markdown)
- Yandex MapKit 4.19 Lite
- ExoPlayer (Media3 1.1.1) — видеоплеер
Асинхронность
- Kotlin Coroutines + Flow (StateFlow, SharedFlow, flatMapLatest, combine, debounce)
- Paging 3 для пагинации списков
Мониторинг и аналитика
- Sentry 7.22.6 (crash-reporting, performance tracing, OkHttp instrumentation)
- Firebase Crashlytics (для Google-сборок)
- AppMetrica 6.3.0 (Яндекс-аналитика)
- UXFeedback SDK (пользовательская обратная связь)
- Кастомный модуль аналитики (analytics:api/analytics:impl/analytics:presentation)
Безопасность
- Biometric API (биометрическая аутентификация)
- Security Crypto (шифрование данных)
- JWT Decode (работа с токенами)
- Модуль feature:secure — безопасный вход
Push-уведомления
- Firebase Cloud Messaging (Google)
- Huawei Push Kit (Huawei)
Тестирование
- JUnit 4 — unit-тесты
- Kaspresso 1.5.5 — UI-тесты (обёртка над Kakao/Espresso)
- Espresso 3.5.1 — UI-тесты
- Allure 2.4.0 — отчётность по тестам
- MockWebServer — мок API для UI-тестов
- Test Orchestrator — изоляция тестов
- Managed Devices (Pixel 2 API 33) — эмуляторы в CI
- Кастомный фреймворк для UI-тестов с Page Object (Kakao DSL)
- Affected Module Detection — запуск тестов только для изменённых модулей
CI/CD
- GitLab CI/CD (.gitlab-ci.yml)
- Docker-образ с Gradle 8.10.2 + JDK 17
- Линтинг, SAST-сканирование (Semgrep, MobSF, CycloneDX)
Обязательные требования
- Kotlin — свободное владение (coroutines, Flow, extension functions, DSL, context receivers)
- Android SDK — глубокое понимание жизненного цикла Activity/Fragment, ViewBinding, RecyclerView, Material Components
- Clean Architecture — опыт работы с многослойной архитектурой (domain → repository → datasource)
- MVVM — ViewModel + Kotlin Flow/StateFlow для реактивного UI
- Многомодульные проекты — опыт работы с проектами на 50+ Gradle-модулей, понимание api/implementation зависимостей
- Retrofit + OkHttp + Moshi — работа с REST API, interceptors, сериализация
- Koin — конфигурация DI, scopes, работа с ViewModels
- Git — уверенная работа с ветвлением (GitFlow / release branches)
- Gradle Kotlin DSL — чтение и модификация build-скриптов, convention plugins, version catalogs
Будет плюсом
*