Как стать Android-разработчиком: путь от нуля до первого оффера
Не «стань разработчиком за 3 месяца» — реальный путь входа на основе данных по 56 вакансий.
Можно ли стать Android-разработчиком с нуля
Да. По данным SkillStat, 14% вакансий Android-разработчика — уровня junior или стажёр. Это 8 вакансий прямо сейчас.
«С нуля» для Android-разработчика — это без коммерческого опыта, но с приложением, которое ставится на настоящий телефон. Работодатель открывает не резюме, а сборку: собирается ли проект, переживает ли поворот экрана, что показывает при выключенном интернете. Kotlin стоит в 83.9% вакансий Android-разработчика, сама платформа Android — в 60.7%.
Трудность входа не в языке. Kotlin учится за пару месяцев, а дальше начинается платформа: Activity и Fragment со своим жизненным циклом, Manifest, разрешения, ограничения на фоновую работу, разные версии Android и разный размер экранов. Рядом Java — она в 42.9% вакансий, потому что в живых проектах остаётся старый код, который придётся читать. Рынок смещён к опытным: на одного junior приходится 2.4 senior.
Как стать Android-разработчиком: короткий план
Пять шагов: язык → платформа → экран → данные → релизная сборка.
Что учить Android-разработчику первым
Не всё сразу. Вот очерёдность по частотности в вакансиях — от самого нужного к менее срочному.
| Навык | Все вакансии |
|---|---|
| Kotlin | 83.9% |
| Android | 60.7% |
| Java | 42.9% |
| CI/CD | 32.1% |
| Jetpack Compose | 32.1% |
| Git | 26.8% |
| REST | 21.4% |
| android sdk | 21.4% |
| WebSocket | 17.9% |
| SOLID | 17.9% |
«Все вакансии» — доля из 56 вакансий. Обновлено 12 августа 2026.
Полный список навыков с частотностью, связками и зарплатной премией — навыки Android-разработчика →
Roadmap Android-разработчика: от нуля до junior
Порядок опирается на частотность навыков по данным вакансий. Первые 4–5 этапов — минимум для первого оффера.
- 01Платформа и язык 83.9% вакансий
Kotlin (Android) / Swift (iOS) / Dart (Flutter) — синтаксис, ООП, идиомы платформы.
Подробнее → - 02UI-компоненты и навигация 32.1% вакансий
Jetpack Compose / SwiftUI / Flutter Widgets, жизненный цикл экранов, навигация.
Подробнее → - 03Сеть и REST API 16.1% вакансий
HTTP-клиенты (Retrofit/Alamofire), авторизация, WebSocket, обработка ошибок.
Подробнее → - 04Архитектура и паттерны 17.9% вакансий
Clean Architecture, MVVM/MVI, SOLID, DI-фреймворки (Hilt, Dagger, DI).
Подробнее → - 05CI/CD и публикация 32.1% вакансий
GitLab CI / GitHub Actions, сборка релизов, App Store / Google Play, тестирование.
Подробнее →
Junior-вакансии Android-разработчика: что реально требуют работодатели
Срез построен на 56 активных вакансий.
Какие проекты сделать для портфолио
Три экрана с моками не считаются. Android-портфолио доказывает, что приложение выживает вне идеального сценария: без сети, после поворота, после того как система выгрузила процесс из памяти.
Как оформить GitHub и резюме
- Прикрепи собранный APK в разделе релизов — работодатель поставит его за минуту
- Скриншоты экранов прямо в README: мобильное приложение читается глазами
- Опиши, на каких версиях Android и на каких устройствах проверял
- Покажи Gradle-конфиг: build variants и подпись релиза говорят больше, чем ещё один экран
- Отдельный раздел README про офлайн и обработку ошибок сети
- Не «делал экраны», а «экран каталога на Jetpack Compose, состояние в ViewModel, кэш в Room»
- Указывай минимальную и целевую версию Android своих проектов
- Если знаешь Java — пиши: 42.9% вакансий её требуют, это не устаревший навык
- Ссылку на Google Play ставь, только если приложение реально опубликовано
- Не перечисляй все библиотеки подряд — оставь те, которые сможешь защитить на ревью
«Изучил Kotlin, знаком с Android SDK, делал приложения на Jetpack Compose»
«Собрал Android-приложение на Kotlin и Jetpack Compose: список и детальный экран, Retrofit поверх REST API, кэш в Room, офлайн-режим, состояние в ViewModel. Настроил Gradle build variants и подписанный релиз, проверил на Android 10 и 14. GitHub: [ссылка], APK в релизах»
Самостоятельно, курсы или вуз — какой путь выбрать
Курсы для Android-разработчика
Сопоставили программы с реальным стеком из 56 вакансий — оценка соответствия рассчитана автоматически, это не реклама.
Когда начинать искать первую работу
Готов, когда твоё приложение ставится с APK на чужой телефон, работает без сети и переживает поворот экрана без потери введённых данных. И когда можешь объяснить, где живёт состояние и почему именно там.
- → hh.ru с фильтром junior и стажировка — Android-вакансии там же, где остальной мобильный рынок
- → Habr Career: раздел мобильной разработки
- → Мобильные команды продуктовых компаний — там, где приложение это продукт, а не довесок к сайту
- → Стажировки крупных компаний: у них Android-направление обычно отдельное и с ревьюерами
- → Аутсорс и студии: много разных приложений и быстрый опыт релизов
- → «Kotlin и Java» в требованиях — обычно новый код на Kotlin, поддержка старого на Java
- → «Compose» без «XML» — проект молодой; оба сразу — есть legacy, и это нормальная школа
- → «Опыт публикации» чаще читается как «умеешь собрать подписанный релиз», а не «у тебя своё приложение в Google Play»
- → Clean Architecture в вакансии (17.9%) — попросят объяснить слои на собеседовании
- → «Знание iOS» в Android-вакансии (7.1%) — про смешанную мобильную команду, не про смену стека
Что спрашивают на собеседовании
Kotlin и корутины
- ·Чем sealed class отличается от enum и когда он удобнее
- ·Как отменяется корутина и что происходит с дочерними
- ·Разница между Flow и StateFlow
- ·Что делает suspend с функцией
Покажи место, где корутина отменяется вместе с экраном
Жизненный цикл и состояние
- ·Что происходит с Activity при повороте экрана
- ·Почему ViewModel переживает пересоздание Activity
- ·Что такое process death и как ты его переживаешь
- ·Куда сохранять черновик формы
Экран, который восстанавливает введённые данные после выгрузки процесса
Jetpack Compose
- ·Что вызывает рекомпозицию
- ·Чем remember отличается от rememberSaveable
- ·Как поднять состояние наверх и зачем
- ·Где Compose перерисовывает лишнее
Экран со списком: где состояние и как избегаешь лишних рекомпозиций
Сеть, Room и офлайн
- ·Что делаешь при истёкшем токене
- ·Как выглядит стратегия кэша в твоём приложении
- ·Что показываешь при таймауте и как повторяешь запрос
- ·Зачем нужны миграции Room
Открой приложение в режиме полёта и покажи, что оно делает
Сборка и релиз
- ·Что такое build variants и зачем они
- ·Чем debug-сборка отличается от release
- ·Что делает R8 и почему после него ломается рефлексия
- ·Как читаешь стек-трейс из Crashlytics
Gradle-конфиг и подписанный релизный APK
Сколько времени нужно, чтобы стать Android-разработчиком
Почему «Android за 3 месяца» не работает. За три месяца реально написать первый экран на Compose. Между экраном и оффером лежит то, что учится только на своём проекте: lifecycle, кэш, ошибки сети, сборка, тесты. Это месяцы, а не недели.
Скорость зависит от того, есть ли под рукой телефон, а не только эмулятор. Много Android-багов существуют только на реальном устройстве: память, батарея, разрешения, оболочка производителя.
Java путь не удлиняет, а сокращает: 42.9% вакансий её требуют, и почти любой рабочий проект окажется частично на Java.
Ошибки новичков
Учат Kotlin и думают, что учат Android
Почему мешает: Язык — часть работы. Платят за понимание платформы: lifecycle, Manifest, разрешения, фон
Как исправить: После базового Kotlin сразу переходи к Android SDK и запуску на устройстве
Игнорируют Java
Почему мешает: Java в 42.9% вакансий Android-разработчика — старый код никуда не делся
Как исправить: Научись читать Java и понимать, как она сосуществует с Kotlin в одном модуле
Тестируют только в эмуляторе
Почему мешает: Эмулятор не воспроизводит память, батарею, оболочку производителя и реальные разрешения
Как исправить: Ставь каждую сборку на свой телефон, желательно не на флагман
Не думают о жизненном цикле
Почему мешает: Приложение теряет данные при повороте и после возврата из фона — это первое, что проверит ревьюер
Как исправить: Держи состояние в ViewModel, проверь process death через настройки разработчика
Собирают клоны чужих интерфейсов
Почему мешает: Экран без сети, кэша и ошибок не показывает ничего, кроме вёрстки
Как исправить: Один проект с REST API, Room, офлайном и обработкой ошибок вместо пяти клонов
Пропускают Gradle
Почему мешает: Сборка ломается у всех, и новичок, который не читает ошибку Gradle, тормозит команду
Как исправить: Разберись с модулями, зависимостями, build variants и подписью релиза
Не смотрят на размер APK
Почему мешает: Лишние библиотеки и ресурсы раздувают сборку, и в продукте за это спрашивают
Как исправить: Открой APK Analyzer в Android Studio, включи R8, убери неиспользуемое
Не пишут тесты на ViewModel
Почему мешает: Clean Architecture (17.9%) и SOLID (17.9%) в вакансиях — про проверяемый код, а не про схемы
Как исправить: JUnit на ViewModel и хотя бы один тест Compose-экрана
Как SkillStat считает данные
Источник: 56 вакансий в московском сегменте. Навыки и грейды извлекаются автоматически из текста каждой вакансии.
Грейды: определяются по требованиям вакансии — уровню опыта, упоминанию «junior», «intern», «стажёр». Это рыночная оценка объявления.
Сложность входа: рассчитывается по доле junior-вакансий и медиане навыков на junior-уровне. Это индикатор, а не гарантия.
Обновление: данные пересчитываются регулярно. Текущий срез — 12 августа 2026.