Ответ
В моем последнем проекте использовался следующий стек:
- Языки: Kotlin (основной), Java (legacy-код)
- Архитектура: MVVM, Clean Architecture с слоями domain/data/presentation
- Библиотеки: Jetpack (ViewModel, LiveData, Room), Coroutines/Flow, Dagger/Hilt
- Сетевые запросы: Retrofit + OkHttp, Moshi для JSON
- Тестирование: JUnit, MockK, Espresso
- CI/CD: GitLab CI, Fastlane для деплоя
Пример слоя data:
@HiltViewModel
class UserRepository @Inject constructor(
private val api: UserApi,
private val db: UserDatabase
) {
val users: Flow<List<User>> = db.userDao().getUsers()
.map { it.toDomain() }
}
Также работал с Firebase (Analytics, Crashlytics) и Jetpack Compose в новых модулях.