Информация в статье обновлена 31 мая, 2023
iOS-разработчик – это программист, который занимается созданием и техподдержкой приложений и игр для устройств на операционной системе iOS:
- линейка мобильных телефонов – iPhone;
- планшетные компьютеры – iPad Mini (Air, Pro);
- ноутбуки линейки Macintosh – MacBook Air (Pro);
- семейство настольных компьютеров Macintosh all-in-one – iMac;
- линейка умных часов – Apple Watch;
- другая продукция компании Apple (портативные медиаплееры iPod touch, смарт-динамики, фотоаппараты, веб-камеры, серверы и т.д.).
Синонимы профессии “iOS-разработчик”: “программист iOS”, “Swift Developer”, “Swift-разработчик”, “iOS-developer”, “Apple-разработчик”. В статье мы будем использовать все указанные термины.
Говоря простым языком, iOS-developer создаёт цифровые проекты для гаджетов, которые производит американская фирма Apple. Специалист проводит весь спектр работ: от написания программного кода до поиска багов и размещения приложения в AppStore..
Корпорация Apple производит продукты премиум-класса, которые доступны далеко не всем. Но, несмотря на высокую стоимость продукции, доля гаджетов в РФ, работающих на платформе iOS, составляет около 25%.
Ежегодно спрос на премиальные устройства неуклонно растёт. Поэтому на рынке труда очень востребованы профессиональные iOS-developer’ы. Зарплаты программистов iOS – высокие, а профессия – престижная. О статистике вакансий и зарплат речь пойдёт чуть ниже.
Чаще всего в реальных компаниях iOS-программист создаёт программное обеспечение для смартфонов iPhone. Практикующие разработчики отмечают следующие плюсы программирования на языке Swift:
- логичная операционная система;
- понятные рекомендации и правила (guideline);
- отсутствие необходимости адаптации интерфейса ПО на экране под каждый гаджет (в отличие от Android-устройств).
Лучшим способом обучения профессии «iOS-разработчик мобильных приложений» являются онлайн-курсы, после которых вы сможете сразу же устроиться на стажировку или работу. Поэтому мы рекомендуем для быстрого старта записаться на дистанционное обучение, тем более это стоит в разы дешевле обучения в ВУЗе, да и по времени это занимает 6-12 месяцев.
В статье полный обзор профессии iOS-разработчик: кто это такой, чем он занимается на работе, что он должен знать и уметь, востребованность, как им стать с нуля, где найти работу и сколько он зарабатывает. Обещаем, будет очень интересно!
Кто такой iOS-разработчик
Разработчик iOS-приложений – профессия достаточно молодая. Эта специальность возникла через пару лет после выхода первого iPhone, в 2009 году. В этот год компания Apple разрешила сторонним разработчикам программировать в iPhone SDK (среда разработки). После этого даже у хлебной лавки во Франции появилось своё приложение в каталоге App Store. Кроме этого возник малоизвестный и дорогой рынок программ, где они делались в единственном экземпляре и устанавливались только на Айфоне заказчика.
Профессия iOS-программиста стала невероятно популярна, ведь по данным компании Эпл в 2020 г. было зарегистрировано 23 млн. специалистов по разработке приложений. Поначалу большинство разработчиков пришли из смежных профессий. Но через некоторое время появились программисты, которые обучились этой профессии с нуля.
В iOS-разработчики могут попасть только счастливые обладатели ноутбука MacBook (хотя это можно реализовать и на Windows). Приложения для яблочных устройств можно создать только на бесплатной платформе Apple XCode, которая запускается только на макбуках. В XCode есть все нужные инструменты для создания полноценных программ для любых устройств на iOS.
Не так давно разработчики Apple придумали новый язык программирования – Swift (взамен Objective-C), которому легко обучиться из-за простого синтаксиса и устойчивости к ошибкам. Например, если ошибки в коде появляются у разработчиков на C++, то они должны найти неправильный символ среди сотен строчек кода. На Swift таких проблем не возникает.
Не бывает хороших языков, бывают хорошие программисты. Андерс Хейлсберг
С каждым годом Swift всё больше смещает 30-летний язык Objective-C, на котором изначально писались все приложения. Несмотря на появление нового языка, на Objective-C до сих пор написана масса программ и игр. Поэтому желательно знать оба языка программирования.
Чем занимается iOS-разработчик
Вот что делает iOS-разработчик простыми словами: он создаёт игры и приложения для всей линейки продукции компании Apple (iPhone, MacBook, iPad). Как утверждают реальные разработчики это по-настоящему творческая профессия, потому что нужно не только владеть языком программирования, но и умело применять идиомы, структуры и синтаксис, чтобы написать красивый и функциональный код.
Сегодня ты делаешь код, завтра код делает тебе деньги. Стив Джобс
Вот как проходит рабочий день типичного iOS-разработчика:
- Программист получает тех. задание, которое уже поделено на более мелкие задачи. Перед тем, как утвердить техническое задание, разработчика могут привлечь для разработки плана.
- Разработчик создаёт архитектуру приложения. Архитектур бывает много, но нужно найти наиболее оптимальную и адаптировать её к текущему проекту.
- Программист приступает к написанию кода, чтобы реализовать все задачи из технического задания. Добавляет геолокацию, Face ID, анимацию и другие фичи.
- iOS-разработчик (или тестировщик) проверяет каждый этап выполнения для выявления ошибок в коде.
- Создание релиза – финальной версии проекта.
- Написание технической документации для готового ПО.
- Программное обеспечение загружается в каталог приложений App Store для скачивания пользователями. Если возникают ошибки с загрузкой программы, то разработчик должен это исправить.
- iOS-разработчик время от времени проводит обновление программы и добавляете новые функции с учётом возникающих ошибок и требований пользователей.
iOS-разработчик в процессе работы общается не только с тестировщиком, но и с дизайнерами, менеджерами, локализаторами и другими членами команды. От уровня коммуникации зависит успех проекта и вероятность повышения iOS-девелопера на более высокую должность.
Разработчики мобильных приложений iOS и Android никак не связаны между собой. Их работа пересекается только в понимании ООП (объектно-ориентированного программирования) и работой с GIT. Оба разработчика пишут программный код в своих средах обработки на своём языке программирования (iOS – Swift, Android – Kotlin). Средняя зарплата разработчика на iOS выше, чем у Android-программиста.
Что должен знать iOS-разработчик
Не имеет значения, для какой сферы жизни нужна программа или игра – требования работодателей практически идентичны. На основе анализа множества вакансий с ресурса hh.ru, редакция сайта Professii.su выявила стандартные требования работодателей.
Писать книги сложнее, чем писать программы. Любой писатель может стать хотя бы посредственным программистом. Обратное, к сожалению, неверно. Дональд Эрвин Кнут
Вот список того, что нужно знать iOS-разработчику, чтобы устроится на работу (так называемые hard-skills):
- знание Swift;
- понимание ООП, функций, переменных;
- знание официальной документации Apple;
- знание основных библиотек и фреймворков;
- уметь работать с GIT;
- опыт создания интерфейса ПО на основе макета;
- уметь работать с архитектурой Services, Rx, MVVM;
- практический опыт работы со средами обработки Apple: XCode, Cocoa;
- знание набора инструментов iOS SDK;
- уметь читать и править чужой код;
- знание английского языка для изучения документации;
- опыт работы с публикацией приложений в App Store;
- уметь проводить тесты и устранять баги в коде;
- опыт работы в команде;
- будет плюсом: знание Objective-C, C++, Python, CSS, HTML, Java, Rest API, SQL, JavaScript, наличие портфолио с реальными проектами для App Store.

Здесь не работает правило, что чем сложнее программный код, тем круче приложение. Некоторые iOS-разработчики считают фреймворки Apple простыми и пытаются создать архитектору ПО с нуля, тратя на это огромное количество времени и сил. На самом деле лучше всего взять стандартные фреймворки в работу, ведь они уже написаны грамотными программистами, которые прекрасно разбираются в коде.
Какие личные качества нужны
Кроме профессиональных знаний каждый уважающий себя разработчик должен владеть так называемыми soft-скилами:
- Умение работать в команде и избегать конфликтов. Если программист не сможет работать со всеми, то он не сможет расти дальше и достичь более высоких позиций.
- Умение тактично указывать на ошибки.
- Умение спокойно воспринимать критику по поводу работы. Не нужно воспринимать критику на личный счёт, а наоборот, надо работать над собой, чтобы стать более грамотным разработчиком.
- Стрессоустойчивость. Нужно уметь владеть собой даже в критических ситуациях.
- Технический склад ума.
- Максимальная концентрация во время работы.
- Способность к обучению. Программирование подразумевает постоянное самообучения из-за быстрого развития технологий. Дополнительно это поможет значительно повысить квалификацию.
- Ответственность. Такая черта характера поможет сдавать проекты точно в срок.
- Умение планировать рабочий день и правильно расставлять приоритеты.
Плюсы и минусы профессии
Расскажем, какие преимущества и недостатки у профессии iOS-разработчик (на основе отзывов реальных программистов).
Плюсы:
- Высокий уровень заработной платы;
- Язык Swift прост для обучения;
- Престижная и перспективная профессия;
- Возможность найти работу даже без технического/высшего образования;
- Присутствует кадровое голодание, отсюда – небольшая конкуренция на рынке труда;
- Возможность карьерного роста, в том числе устройство на работу в иностранную фирму;
- Некоторые компании отправляют сотрудников в командировку за границу.
Минусы:
- Обязательное знание англ. языка (хотя бы на уровне Intermediate);
- Иногда требуется знание других языков программирования;
- Программист находится только внутри экосистемы Apple;
- Необходимо постоянное обучение новым технологиям. Как сказал Линус Торвальдс: «Настоящий разработчик гораздо больше читает, чем пишет»;
- Высокая требовательность к проекту (гораздо выше, чем в разработке приложений OS Android);
- Тестирование и написание кода занимает огромное количество времени, особенно если баги были найдены в финальной версии проекта.
Как стать iOS-разработчиком с нуля
Обучиться профессии iOS-разработчик можно 3 способами:
- Высшие учебные учреждения. Если вы только что закончили школу, то есть смысл потратить несколько лет на получение фундаментальных знаний программирования. Но после получения диплома всё равно придётся где-то нарабатывать практику. В институте упор сделан в основном на теорию, а реальный практикум получить тут будет сложно. Ну, если вам больше 25 лет, то этот способ обучения вам вряд ли подойдёт, потому что совмещать работу и учёбу будет сложно.
- Онлайн-курсы. Это быстрый, но платный способ получения нужной профессии. На курсах iOS-программирования можно за год можно получить полноценное образование и сразу же устроиться на работу стажёром или Junior’ом.
- Самостоятельное обучение. Это многолетний труд по изучению книг, просмотру обучающих видеоуроков, прохождению разнообразных онлайн-курсов. Без жёсткой самодисциплины самостоятельно выучиться вряд ли получится.
ВУЗы
В нашей стране имеются программы обучения, где можно получить профессию «Разработчик мобильных приложений». На занятиях преподают разработку приложений как на iOS, так и на Android.
В России всего имеется 86 ВУЗов и 81 программа обучения. Просмотреть полный список можно на ресурсе Postupi.online. Если поступить на обычную специальность «Программирование», то обучиться языку Swift там не получится, поскольку его там не преподают.
Список хороших институтов, где можно получить образование iOS-разработчика:
- Российский экономический университет имени Г.В. Плеханова;
- Технический университет связи и информатики;
- Национальный исследовательский технологический университет «МИСиС»;
- Нац. иссл. университет “Высшая школа экономики”;
- Московский педагогический государственный университет;
- Дальневосточный федеральный университет;
- Кубанский государственный аграрный университет имени И.Т. Трубилина;
- Национальный исследовательский Томский государственный университет.
Список обучающих программ, где обучают разработке мобильных игр и программ:
- Программирование и информационные технологии;
- Системное и интернет-программирование;
- Искусственный интеллект и машинное обучение;
- Системная и программная инженерия;
- Геймдизайн и виртуальная реальность;
- Фулстек-разработка;
- Разработка компьютерных игр и мультимедийных приложений.
Сколько учиться на iOS-разработчика: минимальный срок обучения составляет 4 года, стоимость каждого года обучения от 250 тыс. руб.
Стоит ли учиться в ВУЗе на программиста iOS? Этот способ обучения отнимет много времени и сил, поэтому для быстрого входа в профессию лучше записаться на онлайн-курсы.
Онлайн-курсы iOS программирования
Качественные дистанционные курсы дадут точные знания по профессии, которые можно сразу же применять на реальных проектах. Упор сделан на практику, а преподаватель сможет ответить на любые вопросы и подсказать, как надо делать правильно, а как делать не надо.
После успешной сдачи экзаменов каждому студенту кураторы помогут составить хорошее резюме, оформить портфолио и помогут с трудоустройством в IT-фирму.
Редакция сайта проанализировала все существующие онлайн-курсы по профессии «iOS-разработчик» на предмет качества преподавания и помощи в трудоустройстве.
Профессия iOS-разработчик от Skillbox
Это годичная программа обучения, где готовят профессиональных разработчиков мобильных приложений. После обучения у вас в портфолио будет 7 реальных проектов, что будет являться большим плюсом при устройстве на работу.
По итогам всех занятий вы создадите командный проект, получите диплом государственного образца, а также вам гарантированно помогут с трудоустройством (в ином случае будут возвращены деньги за обучение).
Узнать подробнее про онлайн-курс: https://skillbox.ru/course/profession-ios-developer/
Изучите дополнительный курс от Скиллбокс “iOS-разработка для начинающих”: https://skillbox.ru/course/ios-developer-upsale/
Факультет iOS-разработки от GeekBrains
Это обучающая программа для новичков, рассчитанная на 16 месяцев. За это время вы сможете реализовать семь проектов, которые будет не стыдно включить в портфолио.
После сдачи выпускного проекта вам будет выдан диплом о профессиональной переподготовке, а также вам помогут пройти собеседование в крупной IT-фирме. ГикБрайнс гарантирует трудоустройство, а если вы не выйдете на работу, то вам вернут деньги за курс.
Более подробная информация по ссылке: https://gb.ru/geek_university/ios
Профессия Программист iOS от GeekBrains
Это сокращённая программа обучения, которая длится полгода. На онлайн-курсе можно с нуля обучиться iOS-программированию и создать реальный проект в портфолио.
После сдачи экзаменов вам будет выдано свидетельство об обучении и вас подготовят к прохождению собеседования в крупной компании. GeekBrains поможет устроиться на работу каждому студенту.
Подробнее про курс может прочитать по ссылке: https://gb.ru/professions/ios_developer
Посмотрите дополнительные курсы от ГикБрайнс:
- Пользовательский интерфейс iOS-приложений: https://gb.ru/courses/114;
- Клиент-серверные iOS-приложения: https://gb.ru/courses/224;
- Производительность iOS-приложений: https://gb.ru/courses/443.
iOS-разработчик с нуля от Нетологии
Это по-настоящему качественный курс обучения, где вы научитесь создавать мобильные приложения для iPhone при помощи языка программирования Swift. После обучения у вас в портфолио будет три крупных реальных проекта. На руки выдаётся диплом о профессиональной переподготовке.
Нетология поможет с трудоустройством после успешной сдачи выпускного проекта.
Подробнее про курс от Netology по ссылке: https://netology.ru/programs/ios-developer
iOS-разработчик с нуля от SkillFactory
Это хороший курс обучения, который длится 1 год. На курсе вы получите фундаментальные знания и максимум практики. Вы научитесь думать, как программист, а не просто писать переписывать чужой код.
Под руководством опытного куратора вы сможете создать 50 программ и небольших проектов, а также пройдёте 3 хакатона по iOS-разработке. После курса вы получите документ об образовании и помощь в трудоустройстве.
Подробнее о программе можно узнать по ссылке: https://skillfactory.ru/ios-razrabotchik-s-nulya
Курс “iOS-разработчик” от Яндекс Практикума
Онлайн-курс рассчитан на 10 месяцев, в результате которого вы с нуля создадите 4 приложения для своего портфолио. Программа предусматривает большое количество практических задач, максимально приближёнными к реальным условиям.
Какие инструменты вы освоит:
- Язык программирования Swift;
- Распределённая система контроля версий кода GIT;
- Паттерны MVC, MVVM;
- Технология AutoLayout;
- Фреймворк UIKit;
- Концепция Сlean architecture;
- Класс UICollectionView;
- Менеджер зависимостей CocoaPods;
- Технология GCD;
- Библиотека для работы с базами данных SQLite;
- Инструмент для защиты и хранения пользовательских данных Keychain;
- Юнит-тестирование и UI Testing;
- Фреймворк CoreData;
- Интерфейс REST.
После завершения программы обучения вы получите диплом о профессиональной переподготовке.
На практике почти 80% студентов Яндекс Практикума трудоустраиваются в течение 4 месяцев после окончания учёбы. Яндекс будет активно сопровождать студентов вплоть до устройства на работу.
Подробнее о курсе: https://practicum.yandex.ru/ios-developer/
Онлайн-курсы от Otus
Изучите авторские программы обучения от IT-онлайн школы Отус:
- Специализация iOS developer: https://otus.ru/lessons/ios-specialization/;
- iOS Developer. Basic: https://otus.ru/lessons/basic-ios/;
- iOS Developer. Professional: https://otus.ru/lessons/advanced-ios/.
Самостоятельное обучение
Если вы хотите самостоятельно обучиться профессии iOS-разработчика и сэкономить деньги на обучении, то надо понимать, что на это уйдёт несколько лет. Во время самообучения вы должны быть жёстко замотивированы и дисциплинированны, чтобы не бросить учиться, когда что-то не получается. На практике это получается лишь у единиц.
С чего начинать обучение в первую очередь? Чтобы понять, нужно ли вам это или нет, начните изучение основ профессии: официальная документация от Apple (Apple Developer Documentation ), видеоуроки на Youtube-канале The Swift Developers, материалы с сайта SwiftBook и чтение обучающей литературы.
Теорию нужно выучить досконально, чтобы научиться писать эффективный и чистый программный код. После этого занимайтесь практикой, создайте такие программы, которые вам реально смогут помочь в реальной жизни. После этого нужно пытаться устроиться на стажировку, проходя собеседование за собеседованием, или берите разовые заказы на фрилансе. Ведь реальную практику можно получить только в коммерческих проектах.
Если вы рассчитываете вообще не вкладываться в обучение, то тут всё равно придётся немного потратиться. Для программирования понадобится яблочная техника – ноутбук MacBook. Дополнительно потребуется аккаунт разработчика, который обойдётся в 99 долларов в год. Но затраты быстро окупятся, когда удастся устроиться программистом даже на позицию Junior.
Уровни iOS developer’ов
Путь iOS-разработчика выглядит следующим образом. Любой начинающий программист начинает с позиции стажёра. На протяжении 6-12 месяцев он помогает более опытным специалистам, попутно впитывая в себя опыт и знания. Через год стажёр переходит на позицию Junior – это младший специалист. Через 3 года работы при должном усердии его переводят на позицию среднего специалиста – Middle. Ещё через 3 года разработчик может стать старшим специалистом – Senior или Team Lead.
Рассмотрим немного подробнее, что нужно знать программисту iOS на каждой занимаемой позиции.
Стажёр
Это новичок с нулевым опытом реальной практики. К нему прикрепляют менторов и опытных разработчиков, которые будут обучать его основам профессии.
Вот что должен знать и уметь iOS-разработчик стажёр:
- основы процесса разработки программного обеспечения (независимо от языка программирования);
- технический склад ума;
- ответственность и усидчивость;
- знание технического английского языка;
- желание развиваться и изучать программирование.

Junior
Это начинающий разработчик с небольшим практическим опытом. Разумеется, его не пустят редактировать даже промежуточный код (dev), а оставят работать в так называемой «песочнице», откуда он не сможет внести ошибки в реальный проект. Джуниору будут давать в работу самые лёгкие и рутинные части проекта, которые впоследствии будут проверены опытными членами команды.
Надо понимать, что фирма вкладывает в такого специалиста свои знания, потому что пользы от него почти никакой. На практике это считается нормой. Через 6-12 месяцев Джуну будут давать в работы более серьёзные кусочки кода, но не надо бояться с ними работать. Это ведь путь к позиции Мидла – среднего разработчика.
Базовые требования к Джуниор-разработчикам:
- опыт в разработке мобильных приложений по тех. заданиям;
- знание Swift;
- умение работать в команде;
- умение работать с GIT;
- знание основ архитектурных паттернов, фреймворков и библиотек.

Middle
Вырасти от Junior’а до Middle’a в среднем получится за 3 года. У Мидла зарплата вырастет не на 20%, а минимум в 2 раза. На этой позиции специалист умеет самостоятельно решать задачи повышенной сложности, а также создавать приложения с нуля.
Чтобы понять код мидла, нужно быть мидлом. Чтобы понять код сеньора, достаточно быть джуниором. Гейб Логан Ньюэлл
Программист знает Swift и Objective-C на высоком уровне и умеет писать чистый и эффективный код, который часто не нуждается в проверке. Дополнительно Мидлы могут обучать стажёров.
Дополнительные требования к iOS-разработчикам на позиции Middle:
- наличие проектов, опубликованных в App Store;
- отличное знание iOS SDK;
- отличное знание языков Swift, Objective-C;
- понимание принципов ООП и его основных паттернов;
- умение быстро разбираться в чужом коде;
- хорошее знание MVVM, MVP.

Senior
Это профессионал, за плечами которого 5-7 лет разработки. Он, конечно, не сможет открывать кабинет руководителя с ноги, но его мнение имеет большой вес при обсуждении проекта. Как Сеньор скажет, то так скорей всего и будет. Но и спрос с такого специалиста очень большой, как и уровень заработной платы.
В некоторых компаниях Senior выполняет роль тимлида или технического директора. То есть он самостоятельно разрабатывает концепцию проекта, определяет стек технологий для реализации тех. задания, распределяет обязанности между членами команды, контролирует каждый этап разработки и отвечает головой за итоговую версию проекта.
Перечень требований к Senior iOS-разработчику:
- опыт коммерческой разработки более 3 лет;
- умение доводить все задачи до конечного результата;
- умение взять в работу новую технологию и внедрить её в существующее ПО;
- умение применять Unit-тесты на реальных приложениях;
- разработка клиент-серверных приложений;
- отличное знание CocoaPods, AFNetworking;
- есть опыт участия в код-ревью.

Team Lead
После достижения позиции Senior у программиста остаётся 2 пути: развиваться в смежных профессиях или уйти в Team Lead. Тимлид руководит разработкой ПО от начала до конца и имеет огромный опыт разработки.
Также в его обязанности входит наставничество Джуниоров, самостоятельная разработка приложений с нуля и распределение задач между другими программистами. Простыми словами – он является правой рукой директора фирмы. Зарплата Team Lead’а соответствующая.

Востребованность и перспективы
Для начала немного статистики. Согласно индексу TIOBE язык программирования SWIFT находится на 14 месте по популярности, не дотягивая 1% до попадания в первую десятку. Это неплохой показатель, просто разработчиков на Swift в разы меньше, чем например на Java или Python.
Теперь перейдём к индексу популярности языков на ресурсе Github. Языки Objective-C и Swift занимают 9 и 10 место, то есть они входят в ТОП 10.
Согласно ресурсу Spectrum.ieee.org в 2021 году язык Swift занимает 10 место среди всех лучших языков программирования, набрав 70 очков популярности из 100.
А сколько всего разработчиков Swift во всём мире? Согласно ресурсу Adtmag.com в 2018 году количество зарегистрированных программистов на Swift и Objective-C составляет 4,1 млн. человек. Для сравнения: на C++ работает 5,4 млн. разработчиков, а на Python – 7 млн.
Спрос на устройства яблочной компании растёт из года в год, несмотря на их высокую стоимость, поэтому iOS-разработчики будут всегда востребованы на рынке. Вот в каких сферах чаще всего требуются такие программисты:
- Брендированные онлайн-сервисы: маркетплейсы, заказ такси, интернет-магазины;
- Цифровые услуги: онлайн-кинотеатры, мессенджеры,
- Приложения с контентом: электронные библиотеки, обучение, тренировки;
- Соц. сети;
- Игры: шутеры, квесты, аркады, гонки.
- Финансовая сфера;
- Государственные услуги;
- E-commerce;
- Программы для бизнес-задач.
Ещё немного статистики. В 2020 г. мобильный трафик вырос на 50% по сравнению с 2019 годом. Разумеется, на это повлияла пандемия, но, тем не менее, этот показатель в будущем будет только расти. А что насчёт мобильных приложений в App Store? По сравнению с 2019 г. в 2020 г. стало на 10% больше программ, достигнув отметки в 4,4 млн.
iOS-разработчики – это молодая гильдия. Во всём мире на языке Swift программирует всего 5% разработчиков (согласно сайту Statista.com), поэтому эта профессия имеет невысокий уровень конкуренции.
Все пути развития iOS-разработчика выглядят следующим образом:
- С нуля любой iOS-разработчик при старании сможет через 5 лет достичь позиции Senior с окладом более 200 тыс. руб. в месяц.
- Можно организовать бизнес, наняв команду разработчиков. После этого можно брать заказы у крупных компаний или создать свои приложения.
- Что её можно делать iOS-разработчикам? Это переквалификация в смежные направления. Например, можно начать разрабатывать программы на Android или заняться программированием на Python и стать ещё более востребованным специалистом.
Многие спрашивают, что ждёт iOS-разработчиков в России? В 2022г. в РФ насчитывается полмиллиона программистов, в число которых также входят iOS-разработчики. Число IT-специалистов ежегодно увеличивается в среднем на 10%, а на мировом рынке это составляет 0,1%. Учитывая, что у пользователей в России среди всех типов гаджетов доля Apple составляет 25%, то спрос на iOS-разработчиков в среднесрочной перспективе точно не уменьшится.
Работа и зарплата
Перейдём к самому интересному – о работе iOS-разработчиком и сколько он получает. За основу анализа мы взяли самый популярный сайт с вакансиями – hh.ru. Согласно поиску по сайту, на апрель 2022 г. размещено 4,8 тысяч вакансий со знанием iOS-программирования по всем регионам России. Это средний показатель среди всех IT-профессий.
Больше всего разработчиков требуется в Москве – около 1,4 тыс. вакансий и в Санкт-Петербурге – более 600.
Что по зарплате? Средняя зарплата программистов на iOS в центральных регионах составляет 145 тыс. руб., а в других городах России – 75-100 тыс. руб./мес.
Стажёрам платят совсем небольшую зарплату – от 10 до 30 тыс. руб./месяц. Если специалист хорошо себя покажет, то через год ему предложат позицию Джуна. По статистике на рынке труда требуется почти 1400 стажёров.
На рынке труда присутствует около 1,5 тысяч вакансий без опыта работы.
Сколько зарабатывает iOS разработчик на начальном этапе? Зарплата Junior iOS-разработчиков составляет от 40 до 100 тыс. руб. в месяц. На этом этапе нужно постоянно находиться в развитии, регулярно читать обучающие книги и техническую документацию. Если очень стараться, то Джуну через пару лет предложат позицию Мидла.
Средняя зарплата iOS-разработчика на позиции Middle составляет 150-225 тыс. руб. и более. Через 2-3 года при должном усердии он может стать старшим специалистом – Сеньором. На рынке не хватает около 2 тыс. таких разработчиков.
Сколько получает iOS-разработчик с опытом работы 5 лет и более? Программисты приложений iOS на позиции Senior зарабатывают от 260 тыс. руб./мес. На рынке требуется почти 1500 опытных разработчиков.
Давайте сравним, сколько iOS-разработчики зарабатывают за границей. Согласно ресурсу ZipRecruiter средняя зарплата iOS-developer’а в США в 2022 г. составляет 107 626$ в год или 8968 баксов/ мес. (по курсу 80 р. за 1 доллар это 717 тыс. руб.). А всего в Америке требуется более 100 тыс. разработчиков – это в 20 раз больше, чем в РФ.
Как устроиться iOS-разработчиком без опыта? Поскольку рынок таких IT-специалистов заполнен не полностью, то многие компании идут навстречу новичкам, беря их на стажировку и вкладывая в них знания. С поиском работы проблем возникнуть не должно.
Полезные советы от редакции Professii.su при поиске работы:
- Всегда отдавайте приоритет тем работодателям, которые платят «белую» зарплату (а не как ИП или в конверте), а также где вас будет обучать наставник. На рынке полно компаний, которые готовы принять на стажировку с дальнейшим трудоустройством или младшим специалистом в уже готовую команду.
- Обязательно займитесь английским языком, пройдите специальные курсы. Вы должны достичь уровня Intermediate, чтобы иметь преимущество при устройстве на работу.
- У вас на руках должен быть свой Макбук, даже совсем старый, иначе полноценно создавать приложения не получится. Наличие собственного MacBook’а является плюсом при устройстве на работу.
- При прохождении собеседования узнайте, есть ли в команде тимлид и как в фирме происходит рефакторинг. Если в фирме работают неопытные программисты без тимлида, то вы не сможете развиваться.
Что обычно спрашивают на собеседовании:
- жизненный цикл контроллера;
- паттерны программирования;
- опыт работы с библиотеками;
- чем отличается Swift Value Types от Reference Types;
- управление памятью;
- Automatic Reference Counting.
Дополнительно могут спросить, как реализуются хранение данных в приложениях, опыт создания сетевых запросов и основы JSON, REST.
Предоставляем вам список ресурсов, где вы можете найти себе работу:
- Hh.ru – самый крупный сайт с вакансиями в России;
- ITMozg;
- GeekJob;
- Habr;
- Superjob;
- Gorodrabot.ru
- Zarplata.ru
- Avito;
- Djinni.co;
- Rabota.ru;
- Stackoverflow.com;
- Toptal.com.
Телеграм-каналы с вакансиями:
- t.me/devjobs;
- t.me/jobGeeks;
- t.me/tproger_official;
- t.me/myjobit;
- t.me/headzio;
- t.me/logic;
- t.me/fordev;
- t.me/mobile_jobs;
- t.me/devops_jobs_feed;
- t.me/freelancetaverna;
- t.me/jc_it;
- t.me/theyseeku.
Фриланс-биржи, где можно брать разовые заказы и набраться практического опыта:
- FL;
- Upwork;
- Pchel.net;
- Freelance;
- Freelancehunt;
- PrimeLance;
- Freelance.habr.com;
- Kwork.ru;
- Freten.ru;
- Weblancer.net;
- Guru.com.
Практическое руководство: как стать профессиональным программистом iOS
С чего начать iOS-разработку новичкам, которые вообще ничего не понимают в программировании? Мы написали большое руководство, как можно получить ценные знания и претендовать на должность стажёра/Junior’а.
Итак, вот пошаговый план, как научиться программировать на iOS.
Разработку можно проводить только на Macbook или iMac. Можно купить и старенький ноутбук, главное, чтобы на него можно было установить свежую версию macOS. Если пока нет макбука, то пощупать разработку можно на Linux или в Windows. Отметим, что платформы разработки XCode в этих программах нет, её придётся устанавливать самостоятельно. Но для сборки полноценного приложения в любом случае понадобится макбук.
Изучите фундаментальные знания. Для начала нужно потратить время на базовые навыки, чтобы не наделать ошибок и не увеличить время обучения. Сразу начинать обучаться iOS-разработке не стоит, так можно только запутаться. Пройдите онлайн курсы по основам программирования, паттернам, алгоритмам и архитектуре приложений. Начните с этого бесплатного курса «Основы программирования».
Язык программирования Swift. Вы должны овладеть такими знаниями, как структуры, классы, перечисления, методы работы с коллекциями, протоколы, опционалы. Знать обязательно нужно прочитать всю информацию, которая есть в официальной документации. Обратите особое внимание на отличия классов и структур. Также рекомендуем изучить бесплатный курс по основам Swift, содержащий 20 видеоуроков.
Материалы для изучения:
- Бесплатный видеоурок от Нетологии “Разработка мобильных приложений на iOS: с чего начать”;
- Полезный видеоурок “AI-технологии: создаем мобильное приложение под iOS с функцией распознавания речи”;
- Полезный вебинар от экспертов “Пишем первое iOS-приложение”;
- Подробная видеоинструкция “Пишем приложение на iOS”;
- Вебинар на Skillbox “Погружаемся в iOS-разработку”;
- Видеомарафон от Alex Skutarenko;
- Курс “Swift 5: Основы”;
- Курс “Введение в разработку приложений для iOS с помощью Swift”;
- Курс “Swift для начинающих”;
- Курсы от Codecademy;
- Бесплатный онлайн-курс «Программирование с нуля на языке Swift».
Swift: объектно-ориентированное программирование:
- Объектно-ориентированное программирование в Swift от SwiftBook;
- Объектно-ориентированное программирование на Metanit;
- 12 обучающих видеоуроков по основам ООП на Свифт.
Типы ссылок, ARC, Retain Cycle. Про автоматический подсчет ссылок (ARC) можно прочитать на этом ресурсе.
Изучите основы устаревшего языка Objective-C. Несмотря на то, что этот язык сейчас не используют для создания приложений, на уже нём написано огромное количество ПО. Поэтому Objective-C нужно знать хотя бы поверхностно. Посмотрите видеоуроки на канале «Программирование на Objective-C».
XCode. Написание программного кода, тесты и автоматизация происходят именно в этой среде разработки. За один день можно разобраться в интерфейсе и за что отвечает каждая кнопка. Видеоуроки: «iOS программирование в Xcode – Уроки разработки iPhone приложений».
Auto Layout, SwiftUI, UIKit, StoryBoard и вёрстка из кода. Это базовые знания любого iOS-разработчика. Благодаря этим навыкам новое приложение можно использовать на всех устройствах Apple. Здесь нужно разобраться, как создаётся интерфейс (UIButton, UIView, UILabel и UIImageView). Для изучения темы подойдут уроки на следующих сайтах:
- Auto Layout Tutorial in iOS: Getting Started;
- Видеоуроки от letsbuildthatapp.com;
- Видео: Swift c нуля: UIKit – Auto Layout Guide Interface Builder;
- UIKit от developer.apple.com;
- Курс “Your First iOS and UIKit App”;
- Introducing SwiftUI от developer.apple.com;
- Статьи про iOS & Swift от raywenderlich.com.
Жизненный цикл ViewController. Изучить основы цикла можно на сайте github.com.
UITableView и UICollectionView. Уроки: UITableView – Tutorial For Beginners и UICollectionView Tutorial: Getting Started.
Протоколы и делегирование. Учебные материалы: Understanding Delegates and Delegation in Swift 4, Implementing delegates in Swift, step by step.
Научитесь работать с GIT. Это распределённая система контроля версий, где над одним проектом могут работать сразу несколько разработчиков, не мешая друг другу. В реальных компаниях знание GIT – обязательное требование. Уроки по GIT на русском языке на сайте githowto.com.
Архитектура: MVC, MVVM. Уроки: Архитектурные паттерны в iOS, Design Patterns on iOS using Swift – Part ½.
Затем надо научиться сохранять данные при помощи CoreData. Кроме этого нужно изучить Firebase и Realm. Материалы по теме:
- Основы безопасности: Keychain и Хеширование;
- How to save user settings using UserDefaults;
- Beginning and Intermediate Core Data.
Grand Central Dispatch. Это важная тема про фреймворк, которую нужно обязательно изучить. Уроки:
- Grand Central Dispatch (GCD) and Dispatch Queues in Swift 3;
- Grand Central Dispatch Tutorial for Swift 4: Part ½;
- Concurrent Programming от objc.io;
- Онлайн-курс «Многопоточность в iOS (Swift)».
Работа с сетью и получение данных из JSON, URLSession. Уроки:
- URLSession от developer.apple.com;
- URLSession Tutorial: Getting Started;
- JSON Parsing in Swift.
Научитесь работать с библиотеками готового кода. Самые популярные – CocoaPods, Alamofire, Snapkit, SPM. Это знания значительно ускорят созданий приложений. Материалы для изучения можно взять на сайте NSHipster.
Научитесь тестировать свой код:
- Видеоурок: Advanced Debugging with Xcode and LLDB;
- Debugging от objc.io;
- Видео “Отладка приложений под iOS”;
Изучите документацию по работе с App Store:
- Apple Developer Documentation;
- Статья “How to Submit Your App to the App Store in 2022”;
- Статья “Inside Code Signing”;
- Полезные видеоуроки WWDC16;
Если уделять учёбе более 60 часов в неделю, то с нуля можно понять основы профессии за полгода. С такими знаниями можно уже можно брать разовые заказы на фрилансе или пытаться устроиться на стажировку.
Список полезной литературы, рекомендованный к прочтению:
- Уинквист, Маккарти «Swift для детей. Самоучитель по созданию приложений для iOS»;
- The Swift Programming Language. Официальная книга на английском языке от яблочных создателей, где входит наиболее полная документация по языку программирования;
- SwiftBook. Это перевод вышеуказанной «Библии» от Apple;
- В. Усов Swift. Основы разработки приложений под iOS и macOS;
- Ханг Во «Оптимизация производительности для iOS»;
- А. Харазян «Язык Swift. Самоучитель»;
- М. Маскрин «Swift 3. Разработка приложений в среде Xcode для iPhone и iPad с использованием iOS SDK»;
- Э. Грей «Swift. Карманный справочник. Программирование в среде iOS и ОS X».
Дополнительные бесплатные курсы:
- Бесплатный курс от сообщества The Rolling Scopes и Mobile People;
- Бесплатные курсы на Coursera.org;
- Видеокурс от академии Яндекса «Разработка под iOS. Начинаем»;
- Курс от Stanford.edu “CS193p – Developing Apps for iOS”;
- Стэнфордский видеокурс: первый .
Полезные ссылки:
- Официальная документация Apple. Это первоисточник всех знаний, где содержится много полезной информации и примеров.
- Хороший блог про яблочную разработку. На ресурсе находится много полезных статей и практических советов.
- Англоязычный блог про iOS-разработку. На сайте публикуется только актуальная информация и библиотека знаний.
- Неофициальная еженедельная рассылка на новости iOS-разработки, в том числе с WWDC (Apple Worldwide Developers Conference-всемирной конференции для разработчиков на платформах Apple).
- Статья с сервисами, где можно проводить свои эксперименты по модификации.
- Открытый клуб iOS и macOS разработчиков.
- Самое крупное и дружное сообщество по разработке под iOS.
- Игра Swift Playgrounds от разработчиков Apple.
- Сайты с алгоритмическими задачками, решение которых пригодится перед прохождением собеседований: hackerrank.com, leetcode.com.
- Самый крупный Телеграм-канал на русском языке: iOS Developers.
- Полезная статья «Вопросы и ответы на собеседовании на вакансию iOS-разработчика».
- Язык программирования Swift. Русская версия от habr.com.
- Интересная статья «Как живет iOS-разработчик в Москве с зарплатой 250 000 ₽».
- Ещё один полезный ресурс про Swift.
- Реальный отзыв о профессии “Как я перешёл из маркетинга в iOS-разработку”.
- Пост программиста: «Со склада в Дагестане – в программисты: как я стал iOS-разработчиком с нуля».
- Интервью с iOS-разработчиком: «С нуля до приложения в App Store за месяц».
Примечательно, но порог вхождения в язык Swift довольно низок, но вот обучаться более серьёзным вещам будет очень сложно, не каждый сможет справиться с этим.
Чтобы научиться думать, как программист, регулярно играйте в стратегические игры, например шахматы или пошаговые стратегии. Постоянно учитесь новым фишкам у самих программистов Apple, изучайте обновления и новые приложения. И тогда вы станете востребованным iOS-разработчиком.
Полезное видео по теме “iOS-разработчик”
Как стать iOS разработчиком бесплатно / iOS разработчик с нуля
Как стать iOS разработчиком с нуля? Где учиться на программиста и сколько они зарабатывают?
10 вопросов iOS разработчику | Интервью с руководителем отдела мобильной разработки
Как я стала iOS-разработчиком – решение, курсы, поиск работы, зарплаты
Заключение
- iOS-разработчик – это программист, который создаёт и поддерживает приложения для яблочных устройств (iPhone, iPad, Apple MacBook и других гаджетов на платформе операционной системы iOS). Программист iOS в основном пишет код на языке Swift, который достаточно лёгок в изучения и имеет простой синтаксис.
- Вакансий на рынке труда по профессии «iOS developer» в России составляет несколько тысяч, причём требуется много специалистов с нулевым опытом работы. После того, как вы станете опытным программистом по iOS, то можно пройти обучение разработке программ и игр на Android, чтобы стать ещё более востребованным программистом.
- Средняя зарплата iOS-разработчика в России составляет 145 тыс. руб. в месяц. Уровень з/п зависит от опыта разработки, причём разница в деньгах между младшим и старшим программистом довольно существенная.
- Обучиться профессии можно как в ВУЗе, так и на онлайн-курсах. На курсах можно освоить профессию всего за один год (или даже за полгода, если интенсивно заниматься), после чего вы сразу сможете устроиться в IT-компанию стажёром или младшим сотрудником.