Специализация

iOS Developer

Вся мощь Swift 5.x для развития профессиональных навыков уровня Junior/Middle/Senior iOS Developer

16 августа

Basic

12 месяцев

Онлайн

Для кого?

Для тех, кто хочет с нуля научиться создавать приложения для устройств Apple и стать востребованным iOS-разработчиком. Вы последовательно пройдете синтаксис Swift, основы программирования, принципы создания приложений и командной разработки.

Для обучения вам потребуется:

  • Компьютер с MacOS
  • К концу обучения для публикации готового приложения, написанного вами в течение всего курса, вам необходимо будет завести или уже иметь оплаченный аккаунт Apple developer, зарегистрированный на ваше имя
Несмотря на ограничения со стороны компании Apple для использования некоторых сервисов экосистемы, нет никакой вероятности, что устройства потеряют актуальность. Поэтому на рынке необходимы специалисты, которые будут поддерживать уже созданные приложения для iOS и macOS, а также разрабатывать новые. Профессия iOS-разработчика по-прежнему актуальна и востребована на рынке труда.

Подходит ли программа именно вам?

Менеджер поможет разобраться!

Какой результат вы получите?

Обучение состоит из двух ступеней, каждая длится 5 месяцев

Начало обучения
28 февраля
  • Для тех, кто хочет с нуля стать востребованным iOS-разработчиком
Ступень 1
Ср 20:00, Пт 20:00
Junior
  • Освоите инструменты обработки ошибок и сможете пользоваться углублёнными инструментами
  • Освоите навыки работы с многопоточность, научитесь распределять вычисления и изучите популярные шаблоны проектирования
  • Изучите основы хранения данных и сетевой слой, научитесь работать с API и парсить данные
  • Научитесь верстать в UIKit программно и с помощью Storyboard
  • Изучите основы Swift, коллекции и принципы ООП
Ступень 2
Ср 20:00, Пт 20:00
Middle
  • Научитесь создавать интерфейсы на основе SwiftUI/Combine
  • Научитесь осуществлять целевой выбор архитектурных паттернов, получите практический опыт работы со структурами данных
  • Научитесь писать кроссплатформенные приложения для экосистемы Apple
  • Научитесь работать с нейронными сетями и с параллельной многозадачностью
  • Научитесь писать общий GPU код для iOS и Android, а также собирать мультиплатформенные приложения

2 приложения для портфолио


Вы сделаете 2 приложения, полностью удовлетворяющие требованиям AppStore

Авторская программа


Тренды современной разработки, которые позволят развиваться как T‑shaped мобайл инженер

Помощь с трудоустройством


Комплексная система, которая поможет получить выгодные офферы в перспективных проектах

Трудоустройство

  • Разместите свое резюме в базе OTUS и сможете получать приглашения на собеседования от партнеров
  • Карьерные мероприятия в сообществе
    Публичный разбор резюме
    Публичное прохождение собеседования и воркшопы

iOS Developer

Перспективы направления
Средний уровень зарплат в Москве:
90 000Junior+ специалист
180 000Middle+ специалист
350 000Senior специалист
2000
актуальных вакансий

Работодатели специализации

Формат обучения

Интерактивные вебинары


2 занятия по 2 ак.часа в неделю
Доступ к записям и материалам остается навсегда

Практика


Домашние задания + 2 проектные работы, которые усилят ваше портфолио

Активное комьюнити


Общайтесь с преподавателями голосом на вебинарах и в Slack группы

Групповые менторские консультации

На курсе предусмотрено менторское сопровождение в виде групповых разборов домашних заданий. Занятие по групповому разбору ДЗ с ментором проводится  раз в месяц в рамках расписания курса.

 Вы выполняете домашнее задание

Ментор проверяет его в личном кабинете, делает ревью и дает развернутый фидбэк

На занятии ментор отвечает на часто возникающие вопросы, проводит подробный разбор работ студентов и объясняет каждый этап выполнения

С ментором также можно общаться по домашнему заданию в чате. Он даст вам обратную связь по итогам проверки и направит вас в нужное русло 

Программа

1 ступень

Введение в курс

Тема 1: Настройка XCode и основы мобильной разработки

Основы SWIFT

Тема 1: Playground, Типы данных, кортежи, опционалы

Тема 2: Коллекции (массивы, словари, множества)

Тема 3: Циклы, ветвление

Тема 4: Классы

Тема 5: Групповая менторская консультация

Тема 6: Структуры

Тема 7: Перечисления

Тема 8: Функции, замыкания

Тема 9: Менеджмент памяти в swift (ARC)

Тема 10: Групповая менторская консультация

Тема 11: ООП

Тема 12: Q&A

Интерфейс

Тема 1: UIView. Изучаем базовое представление в UIKit

Тема 2: UIViewController

Тема 3: TableView, CollectionView

Тема 4: Переходы и навигация в приложении

Тема 5: Autolayout в iOS. Constraints

Тема 6: Групповая менторская консультация

Тема 7: UITextField и работа с клавиатурой в iOS

Тема 8: Введение в SwiftUI

Тема 9: Q&A

Хранение данных

Тема 1: Основы работы с git

Тема 2: Групповая менторская консультация

Тема 3: FileManager

Тема 4: UserDefaults

Тема 5: CoreData

Сеть

Тема 1: URL, URLRequest, URLSession, URLSessionDelegate

Тема 2: Создание сетевого слоя, ResultType

Тема 3: Codable, DynamicJSON

Популярные библиотеки

Тема 1: Популярные решения с открытым исходным кодом

Управление потоками

Тема 1: GCD

Тема 2: Operation, OperationQueue

Шаблоны проектирования

Тема 1: Порождающие паттерны

Тема 2: Структурные паттерны

Тема 3: Поведенческие паттерны

Тема 4: Групповая менторская консультация

Архитектура приложений

Тема 1: SOLID, SOA, MVC, MVVM

Тема 2: Протоколы, делегаты

Тема 3: CleanSwift, VIPER

Обработка исключений и сбоев

Тема 1: Xcode Instruments

Тема 2: Crachlytics

Проектный модуль. Сдача проектов

Тема 1: Публикация в AppStore

Тема 2: Групповая менторская консультация

Тема 3: Консультация по проектным работам

Тема 4: Защита проектных работ

2 ступень

SwiftUI и основы Combine

Тема 1: Проектируем UI декларативно с SwiftUI. В чем отличия UIKit и SwiftUI

Тема 2: SwiftUI List, List с кастомным лейаутом, Hosting ViewControllers

Тема 3: Использование NavigationView, TabView. Нативная навигация + Создание собственного стека Навигации в случаях, где недостаточно нативной

Тема 4: Создание кастомных Shape, SwiftUI Drawing and Animation API

Тема 5: Отображение структурированных данных, List, пейджинг, кастомные компоненты на UIViewRepresentable

Современная архитектура мобильных приложений

Тема 1: Необычная система типов Swift, структуры данных, Generics, Связывание разных частей приложения Observing, Signals, Callbacks. PATs (Protocol with Associated Types)

Тема 2: Protocol Oriented Programming (POP), SOA, модуляризация, архитектурные Rx паттерны: Flux/Redux

Тема 3: MVx, VIP, анализ архитектурных паттернов. SOLID, GRASP, Coupling/Cohesion принципы.

Foundation без сторонних фреймвоков и Swift 5 Standard Library

Тема 1: Swift Runtime, компилятор LLVM, продвинутая отладка с помощью LLDB, скриптинг

Тема 2: Sequences и коллекции, асимптотический анализ: O(1), O(N), O(N*log(N)), O(n^2)

Тема 3: String: устройство, конвертация с другими типами, регулярные выражения Swift 5.7

Тема 4: Поддержка многоязычности: локализация строк, кодогенерация и сервисы переводов. Региональные отличия: переводы дат, величин, оцифровывание текста»

Многозадачность

Тема 1: Передача данных, Transferable протокол, Bluetooth

Тема 2: Проблемы многозадачности и способы их решения, GCD

Тема 3: Проблемы многозадачности, GCD(libdispatch), OperationQueue

Тема 4: Async/Await, Tasks, Groups

Тема 5: Actor, @MainActor, Global actors, Distributed actor (пример по сокетам)

Networking и хранение данных

Тема 1: GraphQL, кодогенерация, отправка и прием сообщений

Тема 2: gRPC, кодогенерация, отправка и прием сообщений

Тема 3: Socket.io, WebSocket и другие сокеты для чатов и мгновенных обновлений

Тема 4: SQLite, способы кеширования, Files, Сравнение CoreData и Realm

Тема 5: Безопасность: AppSecurity, Keychain и обфускация API ключей, SSL Pinning

Создание приложений для Apple Watch, TV, Mac

Тема 1: Виджеты, AppClips

Тема 2: watchOS

Тема 3: tvOS

Тема 4: Shortcuts и Siri интеграция с приложением

CoreML и Vision, нейронные сети и машинное обучение

Тема 1: CoreML, CreateML, Vision использование обученных моделей нейронных сетей

Тема 2: Обработка видеопотока с помощью CoreML в режиме реального времени c AVFoundation, CoreImage и Metal

Тема 3: ARKit и RealityKit, LiDAR датчик

Мультиплатформенная разработка: перенос на Android, Vulkan/Metal

Тема 1: Мультиплатформа для Rich Media: Metal и Vulkan, разработки игр, Video/Image процессинг

Тема 2: Одновременная реализация фич на iOS + Android. Необходимый tool-set

Тема 3: Jetpack Compose

Организация разработки

Тема 1: Тестирование кода XCTest, UITest, fastlane и CI

Тема 2: Как правильно написать резюме и развивать hard-skills

Проектная работа

Тема 1: Написание приложения с нуля

Тема 2: Консультация по проектам и домашним заданиям

Тема 3: Защита проектных работ

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

Проектные работы


Каждая ступень завершается финальным проектом, который предстоит защитить перед преподавателем. Практический опыт и портфолио проектов помогут вам произвести впечатление на собеседовании.
В течение всего курса вы будете работать над большим проектом для своего портфолио — своим собственным приложением. Каждое домашнее задание будет приближать вас к конечной цели — публикации приложения в AppStore.

Преподаватели

Ексей Пантелеев

Руководитель группы разработки мобильных приложений

Новые Облачные Технологии

Анна Жаркова

Руководитель группы разработки

Usetech

Маргарита Жерихова

iOS разработчик

Alpina Digital

Николай Бакланов

Инженер-разработчик

VK

Антон Марунько

iOS Team Lead

Kupibilet

Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания

Прошедшие
мероприятия

Анна Жаркова
Открытый вебинар
Интенсив пишем приложение SwiftUI и SwiftUI + Combine Покажем, как писать простое приложение на SwiftUI. Часть 2
Анна Жаркова
Открытый вебинар
Интенсив пишем приложение SwiftUI и SwiftUI + Combine Покажем, как писать простое приложение на SwiftUI. Часть 1
Оставьте заявку, чтобы получить доступ ко всем записям прошедших мероприятий. Записи всех мероприятий появятся в этом блоке

Корпоративное обучение для ваших сотрудников

Отус помогает развивать высокотехнологичные Команды. Почему нам удаётся это делать успешно:
  • Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
  • Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
  • OTUS проверяет знания студентов перед стартом обучения и после его завершения
  • Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
  • Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
  • OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год

Диплом о профессиональной переподготовке

OTUS осуществляет лицензированную образовательную деятельность. В конце прохождения специализации вы получите сертификат OTUS и официальный диплом о получении новой специальности.

Почему специализация выгоднее, чем отдельные курсы?

  • Стоимость ниже, чем покупка курсов по отдельности
  • Диплом о профессиональной переподготовке
  • Расширенная опция помощи с трудоустройством

Частые вопросы

Что понадобится для обучения?
Программа предусмотрена для новичков и дает все необходимые базовые знания. Поэтому для занятий вам понадобится только компьютер с Mac OS.
Что, если в середине курса я не смогу продолжать обучение?
У вас есть право одного бесплатного трансфера в другую группу на каждой ступени обучения.
Обязательно ли защищать все проектные работы?
Для получения диплома о переквалификации необходимо сдать проекты. В остальном эта часть по вашему желанию. Кроме того проекты не обязательно защищать при аудитории, а можно сдать в чате с преподавателем.
С какого момента я могу заниматься трудоустройством?
Получить карьерную консультацию вы сможете уже в начале обучения. Остальные опции: помощь с резюме, добавление резюме в нашу базу специалистов и т.д. будут доступны после окончания первой ступени.
Я могу вернуть деньги?
Да, вы можете сделать возврат средств пропорционально оставшимся месяцам обучения.