Ответ
Самоучка с 3+ годами опыта. Начал с Java/Kotlin, затем углубился в Android SDK, Jetpack компоненты (ViewModel, Room, Compose). Изучал архитектурные подходы (MVVM, Clean Architecture), многопоточность (Coroutines, Flow).
Пример:
// Clean Architecture + MVVM
class UserViewModel(
private val getUserUseCase: GetUserUseCase
) : ViewModel() {
private val _userState = MutableStateFlow<UserState>(UserState.Loading)
val userState: StateFlow<UserState> = _userState
fun fetchUser(userId: String) {
viewModelScope.launch {
_userState.value = UserState.Loading
try {
val user = getUserUseCase(userId)
_userState.value = UserState.Success(user)
} catch (e: Exception) {
_userState.value = UserState.Error(e.message)
}
}
}
}
Постоянно изучаю новые технологии через документацию, курсы (Udacity, Coursera) и open-source проекты.