Чем занимаются iOS-разработчики

Разрабатывают приложения под iOS
Вы будете использовать язык программирования Swift и создавать приложения для миллионов людей по всему миру
Работают в экосистеме Apple
У Apple строгие требования — благодаря этому получаются качественные приложения, которые любят пользователи
Взаимодействуют с командой
Мобильная разработка — это также командная работа, умение декомпозировать задачи, давать фидбек и многое другое
Видят результат сразу
Сможете не просто писать код, а открывать приложения на устройстве, пользоваться, тестировать их и видеть результат

Для прохождения курса нужен компьютер от Apple

Будем использовать среду разработки Xcode — для ее установки нужен компьютер c версией macOS не ниже Monterey

Какой может быть ваша карьера

Должность

iOS-разработчик/iOS-разработчица

Навыки

Методисты составляют программу вместе с практикующими разработчиками и руководителями из индустрии. Вы учитесь только тому, что пригодится на практике.

Swift
Git
UIKit
AutoLayout
UICollectionView
MVC
MVVM
Сlean architecture
CocoaPods
REST
GCD
UserDefaults
Keychain
SQLite
CoreData
Unit Testing
UI Testing

Средняя зарплата

Можете начать с junior-позиции и продолжить развиваться в любом направлении

Источник: Хабр Карьера
78 000 ₽
Junior
155 000 ₽
Middle
250 000 ₽ +
Senior

Как мы учим, чтобы вы освоили
iOS-разработку за 10 месяцев

Поможем найти работу после учёбы — для этого у нас целый карьерный центр

Будете учить только то, что точно пригодится в работе

Программа рассчитана на 10 месяцев. Учёбе нужно посвящать около 15 часов в неделю.
Вводная часть15 часов
Бесплатная вводная часть
Прежде чем погрузиться в учёбу и начать практиковаться, вы узнаете:
— в чём особенности платформы iOS и экосистемы Apple
— чем занимаются iOS-разработчики и разработчицы
— из каких блоков состоит программа
— какие проекты вам предстоит выполнить
— как в целом проходит обучение в Практикуме
— кто поможет вам учиться
— как найти работу после обучения

Сразу после онбординга начнётся бесплатная часть курса. На ней вы:
— познакомитесь с языком Swift
— допишете и запустите свое первое приложение (для этого не нужно заново учить математику
— но нужен компьютер от Apple с системой macOS Monterey или более поздней версии)
— увидите результаты своих трудов и поймёте, интересно ли вам заниматься iOS-разработкой в дальнейшем
Проект:
Игра Pong
Опциональный модуль6-8 часов
Бассейн
После покупки курса мы предложим вам «Бассейн».

Это несколько дополнительных уроков, которые станут доступны вместе с первым спринтом. Благодаря им вы познакомитесь с основными понятиями программирования. Простые и увлекательные задачи на базовую логику и алгоритмику помогут лучше усваивать дальнейший материал, особенно если вы сталкиваетесь с программированием впервые в жизни.

Важно: можно не проходить «Бассейн», а сразу отправиться исследовать iOS-галактику. Чтобы определиться, нужен вам этот этап или нет, мы предложим вам ответить на несколько вопросов.

Тема 1. Базовая логика
— Истинность
— Двойное отрицание
— И или Не

Тема 2. Алгоритмика
— Базис (последовательность действий), понятие алгоритма
— Следование
— Понятие переменной
— Массивы и циклы

Тема 3. Программирование
— Как работают языки программирования, синтаксис, выражение
Модуль 140 часов
Знакомство с iOS-разработкой и основами Swift
Изучим основные конструкции языка программирования Swift, на котором пишется большинство приложений под iOS, в специальном тренажёре от Apple — Playground. Познакомимся со средой разработки и тем, как устроены мобильные приложения

Спринт 1
Тема 1. Основы Swift
Тема 2. Работа с Xcode
Тема 3. Типы
Тема 4. Массивы, циклы
Тема 5. Функции
Тема 6. Перечисления

Спринт 2
Тема 1. Структуры данных
Тема 2. Опционалы
Тема 3. Классы
Тема 4. Протоколы
Тема 5. Extensions
Модуль 2121 час
Основы вёрстки, сетевого взаимодействия и хранения данных
Проект этого модуля — квиз по популярным фильмам. Вам предстоит работа с киносервисом IMDb: получить список 250 самых популярных фильмов, и для каждого фильма создать вопрос для квиза. Пользователю нужно будет угадывать, какого персонажа играл актёр на фотографии.

Для пользователей приложение — это прежде всего работа с интерфейсом, который вы для них и делаете. В рамках работы над приложением вы сверстаете экран квиза, освоите HTTP и REST для работы с API IMDb и научитесь хранить данные пользователя.

Задачи и проект в этом модуле будут сначала проходить через автотесты в Github или самостоятельную проверку по чек-листу, а затем отправятся к код-ревьюеру.

Спринт 3
Тема 1. Основы верстки и базовые UI-элементы

Сверстаете простой экран для приложения с квитами по макету в Figma, добавите и удалите элементы на экран.

Тема 2. Cвязь верстки с кодом, обработка действий пользователя
Добавите обработку событий и контролов.

Тема 3. Git

Тема 4. Слои мобильного приложения

Спринт 4
Тема 1. Простая верстка, конфликты AutoLayout

Дорабатываем верстку экрана, учимся решать конфликты AutoLayout.

Тема 2. Cвязь с кодом, отображение данных
Доработаете логику интерфейса и опишете структуру данных экрана.

Спринт 5
Тема 1. Хранение данных. Какие бывают данные, как их хранить. In memory

Создадите свою структуру данных, научитесь хранить результаты в user defaults.

Тема 2. Сеть. Клиент-серверное взаимодействие. HTTP и REST
Изучите основы клиент-серверного общения, научитесь работать с API сервиса IMDb.

Тема 3. URLSession, URLRequest
Напишете простой запрос на получение данных, а если почувствуете в себе силы решить задачу со звёздочкой — добавите индикатор загрузки (UIActivityIndicatorView).

Тема 4. Encoding / Decoding
Сделаете Codable-структуры для использования в запросе и обработке ответа сети.

Спринт 6
Тема 1. Архитектура. Введение
Тема 2. Архитектура. SOLID, KISS, DRY, YAGNI
Изучите основные принципы объектно ориентированного программирования (ООП) и шаблоны проектирования.

Тема 3. Архитектура. MVC
Займётесь личным рефакторингом — приведёте в порядок свой код.

Тема 4. Сборка и деплой. Dependency management
Подключите CocoaPods/Swift Package Manager и SwiftLint.

Тема 5. Тесты. Unit tests, XCTest
Напишете тест по функциональной спецификации.

Тема 6. Тесты. UI Testing
Напишете UI-тест для одного или нескольких сценариев.
Проект:
Одностраничное приложение с квизами по топ-250 фильмов по версии IMDb
Модуль 3106 часов
Навигация, работа с таблицами, авторизация
В этом модуле вы освоите переходы между экранами, элементы вёрстки со скроллом и улучшите свои навыки клиент-серверного взаимодействия. Проектом этого модуля будет клиент сервиса стоковых фотографий (аналог Unsplash).

Задачи и проект в этом модуле будут сначала проходить через автотесты в Github или самостоятельную проверку по чек-листу, а затем отправятся к код-ревьюеру.

Спринт 7
Тема 1.
UI. Сложная верстка
Сделаете Tab Bar (UITabBarController).

Тема 2. UI. Навигация
Cверстаете главные экраны приложения по макету.

Спринт 8
Тема 1.
UI. UIScrollView и UITableView
Cверстаете главные экраны по макету с использованием компонентов скролла (UIScrollView) и таблицы (UITableView).

Тема 2. Хранение данных. UserDefaults
Загрузите данные из хранимого в UderDefaults JSON-файла.

Спринт 9
Тема 1.
Базовая многопоточность, авторизация
Освоите работу с многопоточным кодом для выполнения нескольких задач параллельно.

Добавите в приложение авторизацию в сервис Unsplash.

Тема 2. Хранение данных. Keychain
Научитесь сохранять данные в Keychain и получать их оттуда.

Спринт 10
Тема 1.
Cеть. Многопоточность
Изучите Grand Central Dispatch (GCD) — библиотеку, позволяющую эффективно управлять потоками выполнения задач. Реализуете несколько сетевых запросов.

Тема 2. Тесты. Test-driven development (TDD), Mock, Stub
Напишете тесты сетевых запросов (Mock, Stub).

Спринт 11
Тема 1.
Архитектура. MVP+C
Погружение в работу архитектуры iOS-приложений. Обзор архитектуры MVP.

Тема 2. Архитектура. MVVM
Проведете рефактиринг проекта: перейдете от MVC к MVVM.

Тема 3. Архитектура. Координаторы
Реализуете координаторы для экрана авторизации и основных экранов.

Спринт 12
Тема 1.
Сборка и деплой. Advanced Xcode
На более глубоком уровне погрузитесь в настройки проекта. Освоите работу с конфигурациями проекта (сможете менять источник данных для приложения).
Проект:
Приложение по поиску изображений со сложными сетевыми запросами и авторизацией
Модуль 491 час
Коллекции, встроенные контроллеры, базы данных и основы многопоточности
В этом модуле вам предстоит сделать приложение-трекер для разных событий. Вы освоите сложную вёрстку — работу с коллекциями. На этот раз все данные будут храниться локально в базе данных, а работа с информацией будет происходить на фоновом потоке.

Задачи и проект в этом модуле будут сначала проходить через автотесты в Github или самостоятельную проверку по чек-листу, а затем отправятся к код-ревьюеру.

Спринт 13
Тема 1.
UI. UICollectionView и ChildVCs
Сверстаете список и доменные модели трекера, экран создания трекера, реализуете бизнес-логику.

Спринт 14
Тема 1.
Clean Architecture
Синхронизируете обновление данных между несколькими экранами (создание нового крекера и главный экран).

Тема 2. UICollectionView и ChildVCs
Освоите работу с отображением данных в несколько столбцов и разделением контроллера на дочерние.

Спринт 15
Тема 1.
Хранение данных. Базы данных
Встроите базы данных в проект. Научите приложение сохранять и читать информацию из БД.

Спринт 16
Тема 1.
Многопоточность. GCD, Operations
Тема 2. Многопоточность. Thread-safety
Реализуете поиск по трекерам на экране списка трекеров с Debounce.

Тема 3. Многопоточность. DispatchGroup, queue
Освоите работу с группированием асинхронных задач в приложении.

Спринт 17
Тема 1.
Хранение данных.
Освоите работу с доменной моделью и реализуете миграцию.
Проект:
Приложение-трекер для разных событий
Модуль 512 часов
Продуктовая и командная разработка
Спринт 18
Тема 1.
Жизненный цикл продукта, MVP
Тема 2. Agile
Тема 3. Инструменты ведения командной работы
Тема 4. Мобильная разработка в реальной жизни
Поймете, как устроены команды, кто есть кто, как коммуницировать с разными ролями.
Тема 5. Git для гигантов
Тема 6. Декомпозиция задач
Финишная прямая40 часов
Командный дипломный проект
Разделитесь на команды по 3-5 человек и вместе сделаете eСommerce приложение — небольшой NFT-маркетплэйс. Это приложение с каталогом NFT-картинок, которые можно просматривать, выбирать, класть в корзину, проходить чекаут и совершать покупку.

У вас будет техническое задание от менеджера и дизайн — нужно будет декомпозировать всю работу, разбить на спринты и сделать продукт за 1 месяц.

Спринт 19
1 неделя

Созвонитесь с наставником, который поможет декомпозировать главные задачи проекта, команда распределит их между собой.

2 неделя
Проведёте ретроспективу, сделаете выводы по двухнедельному отрезку работы.

Спринт 20
3 неделя

Вместе с наставником проведете планирование оставшихся задач.

4 неделя
Поделитесь результатами работы с другими командами на демо.
Проведете ретроспективу, сделаете выводы по всему командному проекту.
Проект:
NFT-маркетплейс
Карьерный трек30 часов
Программа трудоустройства
Эта часть курса для тех, кто решил найти работу в сфере разработки. Она становится доступна после прохождения модуля 4.

Карьерный трек организован так же, как и предыдущие темы: теория и практика. Но вместо навыков программирования вы изучите стратегии поиска работы и узнаете о тонкостях выбора компании-работодателя, а в качестве практики вы будете писать не код, а резюме и сопроводительное письмо.

В течение курса вы подготовите портфолио к визиту работодателя и проведёте исследование рынка трудоустройства, а также потренируетесь проходить технические собеседования на публичных встречах.

Спринт 1
— Профессия и целеполагание
— Поиск работы
— Рынок труда
— Работа мечты
— Подготовка резюме
— Хорошее портфолио

Спринт 2
— Неформальный поиск работы
— Сопроводительное письмо
— Коммуникация с HR
— Анализ собственных результатов

Спринт 3
— Подготовка к собеседованию
— Soft и hard-навыки
— Деньги
— Выбор компании
— Офис, удалёнка или фриланс?
— Как не ошибиться при выборе компании
— Испытательный срок
— Публичное техническое собеседование

Акселерация

Программа сопровождения: вы ищете работу, мы консультируем и помогаем. Участвовать в программе могут те, кто закончил программу трудоустройства и находится в активном поиске работы.

Участники на практике применяют навыки, полученные в программе трудоустройства, адаптируют эти навыки к собственной стратегии поиска работы и каждую неделю рассказывают о своих результатах.

Основной формат участия — индивидуальные консультации и публичные собеседования.

Что ещё важно

Академический отпуск
Если жизненные обстоятельства осложнились или темп учёбы нужно снизить, вы можете уйти в академический отпуск
В любой момент вернём деньги
Вы можете вернуть деньги за оставшееся время обучения: для этого не нужно ничего доказывать
Нужен компьютер с macOS
Будем использовать среду разработки Xcode — для установки 13 версии нужен компьютер от Apple c macOS не ниже Monterey

Отвечаем на вопросы