Ответ
В основном работал с Android SDK и Jetpack компонентами (ViewModel, LiveData, Room, Navigation, WorkManager).
Для асинхронности использовал Kotlin Coroutines и Flow, реже RxJava.
Для DI – Dagger Hilt (ранее пробовал Koin).
Из мультиплатформенных – Compose Multiplatform (для кроссплатформенной UI-логики).
Пример с Coroutines + Room:
@Dao
interface UserDao {
@Query("SELECT * FROM users")
fun getUsers(): Flow<List<User>>
}
class UserRepository @Inject constructor(
private val userDao: UserDao
) {
suspend fun fetchUsers(): Flow<List<User>> = userDao.getUsers()
}
Для тестов – JUnit, MockK, Espresso.