
Путь от нуля до первого оффера в мобильной разработке — год-полтора: примерно полгода-год учиться плюс полгода искать работу. Порядок жёсткий: основы программирования, потом одна платформа — Android или iOS, потом её язык до автоматизма, потом SDK и инструменты, потом архитектура, и только потом — собеседования. Junior на Kotlin (Android) стартует с 105 000–125 000 ₽, на Swift (iOS) — со 110 000–130 000 ₽ (медиана предлагаемых зарплат на hh.ru за 2026 год). Но у мобильной разработки есть козырь, которого нет у других направлений, и о нём забывают на курсах: вы можете опубликовать собственное приложение в магазине. Не показать репозиторий на собеседовании — а дать ссылку, по которой работодатель скачает вашу программу на свой телефон.
Поэтому план ниже — не «какой курс купить». Это карта: что учить, в каком порядке, сколько это реально занимает и как собрать портфолио, в котором лежит живое приложение, а не папка с учебными заданиями.
Дальше по шагам. Сначала почему нельзя начинать с того, что просят в вакансиях. Потом сам роадмап — от основ программирования до публикации в сторе. Потом разговор про то, какую платформу взять первой. И сетка сроков: что у вас будет через месяц, через полгода, через год.
Антон, двадцать восемь лет, бывший автомеханик из Самары. Решил в Android — открыл вакансии, увидел в каждой Kotlin, Jetpack Compose, корутины, и начал с Jetpack Compose. Логика та же, что у всех: учи то, что просят работодатели.
Месяц он копировал чужие экраны из туториалов, и всё собиралось — ровно до момента, когда надо было написать что-то своё. Список товаров на экране отрисовался по примеру. А отсортировать его по цене Антон не смог: для этого нужен был цикл, условие, понимание, как данные хранятся в памяти. Этого у него не было. Он учил, как рисовать интерфейс на фреймворке, не зная языка, на котором фреймворк написан, не зная программирования вообще. Строил витрину магазина, под которой не было ни стен, ни фундамента.
Это типовая ошибка мобилки, и она дорогая. Android и iOS выглядят как набор громких слов — Compose, SwiftUI, корутины, — и новичок хватается за верхний слой, потому что именно его называют в вакансиях. Но вакансия описывает, что делает middle в проде, а не в каком порядке этому учиться. Учить мобильную разработку с фреймворка — всё равно что учить язык, начав с поэзии, не зная алфавита.
Цена — не лишний месяц. Это иллюзия движения, после которой человек решает, что программирование «не для него», и уходит. Хотя проблема была не в голове. В порядке.
Вот что пропустил Антон и пропускает каждый второй. Прежде чем учить Android или iOS, надо научиться программировать вообще. Переменные, условия, циклы, функции, как данные живут в памяти, что такое объект и класс. Эти вещи одинаковы и в Kotlin, и в Swift, и в любом другом языке — они не про платформу, а про мышление.
На основы уходит полтора-два месяца ежедневной работы по два-три часа. Скучно, потому что на экране ничего красивого — ни кнопок, ни анимаций, только текст в консоли. Именно поэтому большинство проскакивает этот слой галопом и потом всю учёбу буксует. Каждый раз, когда вы не можете отсортировать список или обработать ответ сервера, корень один — недоученные основы.
И тут хорошая новость, специфичная для мобилки. Язык, на котором вы учите основы, — это сразу язык вашей будущей платформы. Идёте в Android — учите основы на Kotlin. Идёте в iOS — на Swift. Не нужен отдельный «учебный язык», который потом выбросите. Вы с первого дня пишете на том, на чём будете работать. Поэтому выбор платформы — не где-то в середине пути, а почти в начале: от него зависит, какой язык открывать.
Развилка Android против iOS встаёт раньше, чем кажется, и решается она проще, чем вокруг неё спорят. Детально про выбор — отдельный разговор, здесь короткая практичная версия, которой хватит, чтобы начать сегодня.
Android — это Kotlin. Разрабатывать можно на любом компьютере: Windows, Linux, старый ноутбук — всё подойдёт. Порог по железу почти нулевой. Аудитория Android в России подавляющая, вакансий на Kotlin много.
iOS — это Swift. И здесь жёсткое условие, о котором молчат восторженные ролики: разрабатывать под iOS можно только на технике Apple. Нет Mac — нет iOS-разработки, точка. Среда, в которой собирают приложения, существует только под macOS. Junior на Swift получает чуть больше, чем на Kotlin, — 110 000–130 000 ₽ против 105 000–125 000 ₽ по медиане hh.ru за 2026 год, — но это разница в проценты, а не в разы, и ставить выбор платформы на неё глупо.
Есть третий путь — кросс-платформа: Flutter с языком Dart или React Native. Одно приложение работает сразу и на Android, и на iOS. Звучит как «зачем учить одну платформу, если можно сразу обе» — и это ловушка для новичка. Кросс-платформенные инструменты прячут от вас, как устроена сама платформа под капотом, а на собеседовании junior спрашивают как раз про капот. Начинать с Flutter — учиться водить на машине с автопилотом: едет, но что делать, когда автопилот отключился, вы не знаете. Сначала одна нативная платформа до уверенного уровня, кросс-платформа — потом, вторым слоем.
Практичное правило выбора: есть Mac и тянет к iOS — Swift. Нет Mac или бюджет ограничен — Android и Kotlin, и не жалейте. Платформы переключаются за пару месяцев, когда основы уже в голове; первая важна не тем, какая «лучше», а тем, чтобы вы на ней не застряли из-за отсутствующего железа.
Язык освоили, основы в руках. Теперь слой, без которого код не превращается в приложение.
SDK и среда разработки — набор инструментов платформы. Для Android это Android Studio, для iOS — Xcode. Здесь вы учитесь не языку, а тому, как из кода вырастает экран на телефоне: как устроен жизненный цикл приложения (что происходит, когда пользователь свернул его и вернулся через час), как рисуется интерфейс — на современном Jetpack Compose для Android или SwiftUI для iOS, как приложение ходит в интернет за данными и показывает их. На это уходит два-три месяца, и здесь же подтягивается Git — система контроля версий, рабочий стол любого разработчика. Пустой профиль на GitHub в день собеседования — пустое резюме.
Дальше — архитектура. Это не отдельная технология, а правила, по которым раскладывают код, чтобы приложение не превратилось в кашу из тысячи строк в одном файле. Звучит абстрактно, и новички этот слой презирают: «работает же и так». Работает — пока проект маленький. На собеседовании первое, что отличает джуна от человека, прошедшего курс, — вопрос «а как бы вы это разложили». Тот, кто складывал весь код в один экран, плывёт. Тот, кто хотя бы понимает, зачем логику отделяют от интерфейса, проходит. Глубоко в архитектуру на старте лезть не надо — но базовый шаблон, принятый на вашей платформе, знать обязательно.
Эти слои не учатся в вакууме по неделе каждый. Они нарастают внутри проектов: SDK осваивается, когда вы собираете первое приложение, Git — с первого же коммита, архитектура — когда приложение перестаёт помещаться в один файл. Выделяйте время не под «изучить SDK», а под «собрать приложение», и SDK выучится сам.
Вот факт, который переворачивает весь план и которого нет у других ИТ-направлений. Frontend-джун показывает на собеседовании ссылку на сайт. Мобильный разработчик показывает приложение в магазине, которое интервьюер скачивает на свой телефон прямо во время разговора. Это не строчка в резюме. Это работающий продукт в руках человека, который решает, брать вас или нет.
Рынок 2026 года устроен жёстко. Фокус найма сместился на опыт: 51% вакансий требуют от одного до трёх лет, ещё 25% — от трёх до шести. На совсем зелёного джуна остаётся узкая щель. Формула рынка — «дефицит навыков, а не людей»: компаниям не хватает не желающих войти в ИТ, а тех, кто умеет делать конкретную работу и может это доказать. Для мобилки доказательство почти осязаемое — опубликованное приложение.
Что кладут в портфолио, чтобы оно работало. Одно-два приложения, но доведённых до публикации в магазине, а не три заброшенных проекта на середине. Приложение не обязано быть гениальным: трекер привычек, счётчик расходов, таймер для тренировок, конвертер — что угодно, что решает одну понятную задачу и работает без вылетов. Ценность не в идее, а в том, что вы прошли весь путь: написали, отладили, оформили, опубликовали и пережили проверку магазина. Этот путь и есть та работа, которую делает мобильный разработчик в команде. Человек, который провёл приложение через публикацию сам, уже знает то, чего не знает выпускник курса с десятью учебными экранами в репозитории.
Публикация — отдельный навык, и его недооценивают. Подготовить приложение к магазину, оформить страницу, пройти ревью — здесь свои подводные камни, через которые вы пройдёте на собственном проекте и сможете рассказать об этом живой историей. «Я выложил приложение, его завернули на проверке вот за это, я починил и выложил снова» — это история взрослого разработчика, а не студента. Истории запоминаются. Список пройденных модулей — нет.
Теперь честно, без рекламного оптимизма. Войти в мобильную разработку в 2026-м труднее, чем три года назад. Курсы выпустили волну джунов, требования работодателей выросли — от новичка нередко ждут, чтобы он с первой недели тянул почти как middle. Поиск первой работы у многих растягивается на шесть-двенадцать месяцев, и часть людей на этом сроке сдаётся. Закрывать на это глаза — готовить себя к разочарованию.
Здесь же стоит трезво посмотреть на красивую цифру. По данным Хабр Карьеры за апрель 2026 года, медианная зарплата мобильного разработчика — около 320 000 ₽ на руки. Эту цифру любят показывать на лендингах. Только она считает все грейды разом, и тянут её вверх сеньоры. Ваш реальный ориентир на входе — те самые 105 000–130 000 ₽ junior, а не 320 000. Путать медиану по всем грейдам со стартовой зарплатой — то же самое, что судить о зарплате врача по доходу главврача.
«Раз рынок переполнен, может, и не лезть?» — резонный вопрос. Ответ зависит от того, как вы входите. Если как большинство — прошёл курс, получил сертификат, разослал сто одинаковых резюме с учебными проектами, — то да, шансы низкие, потому что вы неотличимы от ещё ста человек в той же очереди. Переполнен рынок именно одинаковыми. Не переполнен теми, у кого в магазине лежит работающее приложение со скриншотами, отзывами и понятной историей, как оно делалось. Опубликованное приложение — не просто плюс к резюме. На перенасыщенном рынке это и есть линия, отделяющая вас от толпы.
Чтобы план не остался абстракцией — реальные горизонты при 2–3 часах в день. Меньше времени — растягивайте сроки, но не меняйте порядок.
Месяц. Вы выбрали платформу, открыли её язык и пишете первые программы на основах: переменные, условия, циклы, функции. Никаких красивых экранов пока нет — только консоль. Скучно, зато это точка дешёвого разворота: честно понимаете, затягивает ли вас программирование как таковое или приходится заставлять себя каждый вечер. Лучше узнать это на консоли за месяц, чем на фреймворке через полгода.
Полгода. Основы в руках, SDK освоен, вы собираете рабочие экраны, понимаете жизненный цикл приложения и базовую архитектуру. В работе — первое собственное приложение, которое вы ведёте к публикации. Профиль на GitHub живой. Здесь начинается переход от учёбы к портфолио, но на рынок выходить рано: приложение в магазине ещё не опубликовано, а без него вы — один из ста.
Год — полтора. В магазине лежит одно-два ваших приложения, портфолио собрано, начинается активный поиск работы. Между «готов» и «получил оффер» лежат те самые полгода поиска — это нормальный срок, а не личная неудача. Дальше — junior-зарплата 105 000–130 000 ₽ по медиане hh.ru за 2026 год, а с ростом в middle вилка идёт заметно выше. Самый резкий скачок дохода во всей карьере — переход из junior в middle, но это уже следующая история, после первого оффера.
Главное правило, на котором держится весь план: учите слоями снизу вверх и никогда не перепрыгивайте. Сначала программирование на языке вашей платформы, потом SDK и инструменты, потом архитектура, потом — приложение, доведённое до публикации. Поймали себя на том, что копируете экраны на Compose или SwiftUI, а цикл написать не можете, — остановитесь и вернитесь на слой ниже, к основам. Сэкономите месяцы.
Конкретно на ближайшее время — три шага.
Сначала выберите платформу, потому что от неё зависит язык. Есть Mac и тянет к iOS — Swift. Нет Mac или бюджет в обрез — Android и Kotlin, без сожалений. Не выбирайте кросс-платформу первой: она спрячет от вас то, про что спросят на собеседовании.
Дальше — полтора-два месяца только на основы программирования, на выбранном языке, без единого красивого экрана. Это самый скучный и самый важный отрезок. Заведите GitHub в первый же день и складывайте туда каждую программу, даже кривую: портфолио наращивают с первого шага, а не собирают за вечер перед собеседованием.
И поставьте себе целью не «пройти курс», а «опубликовать приложение». Это ваш козырь, которого нет у соседних направлений. Но прежде чем покупать курс, проверьте, что мобильная разработка — действительно ваше, а не первое, что попалось в зарплатных обзорах. Профтест на этом сайте за пять минут сопоставит ваш склад ума, бэкграунд, наличие техники и бюджет с подходящими направлениями и покажет, стоит ли вам в мобилку — и под Android или iOS заходить. Это самый дешёвый способ не повторить путь Антона, который месяц строил витрину без фундамента.
Антон, кстати, не бросил. Он закрыл Jetpack Compose, вернулся к самому началу — к циклам и условиям, которые раньше счёл ерундой, — и за полтора месяца понял про программирование больше, чем за предыдущий месяц копирования экранов. Через полгода он собрал первое приложение — счётчик расходов для себя — и провёл его через публикацию в магазине. Завернули дважды. Он починил и выложил снова. Первый оффер пришёл спустя год с небольшим. На собеседовании он не показывал сертификат. Он попросил интервьюера открыть магазин и скачать его приложение.