На чем вы в основном пишете
Что проверяют
Это разогрев, но с двойным дном. Интервьюер сверяет устный ответ с резюме, прикидывает уровень для следующих вопросов и понимает, из какой вы эпохи: Java и View с XML или Kotlin и Compose. Ещё смотрят, выбираете ли вы инструменты сами или просто работаете с тем, что дали.
Как отвечать
Коротко, по слоям, и с приглашением копнуть глубже:
- язык: Kotlin как основной, Java если поддерживали старый код. Скажите про корутины и
Flow, если реально ими пользуетесь; - интерфейс: Compose, View с XML или оба сразу. Про оба сразу говорить не стыдно, постепенная миграция это обычное состояние проекта;
- обвязка: внедрение зависимостей (Hilt, Koin или чистый Dagger), сеть (Retrofit с OkHttp либо Ktor), хранение (Room, DataStore), фоновые задачи (WorkManager);
- архитектура: MVVM или MVI, однонаправленный поток состояния, как режете слои;
- тесты и сборка: JUnit, mockk, Turbine, инструментальные тесты, Gradle и сборка в CI.
На каждый пункт держите одну живую подробность, например почему у вас Koin, а не Hilt. Это превращает перечисление в разговор и задаёт тему, в которой вы сильны.
Где спотыкаются
Первое: перечисляют всё, что когда-либо видели. Интервьюер выбирает из списка самое незнакомое кандидату и уточняет, после чего разговор идёт под горку. Называйте только то, что готовы обсуждать.
Второе: отвечают одним словом и ждут следующего вопроса. Вы теряете единственную возможность самому задать направление собеседования.
Третье: хвалят новое и ругают старое, не выяснив стек компании. Фраза про то, что XML пора закопать, звучит неудачно, если проект как раз на нём. Оценки лучше давать через задачу, а не через моду.