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

Android Developer

Создайте с нуля первые мобильные приложения на Kotlin и освойте продвинутые технологии для решения Middle задач

28 мая

Basic

10 месяцев

Онлайн

Для кого?

  • Специализация для всех желающих научиться создавать Android-приложения и стать востребованным разработчиком. Приветствуются знание базовых принципов программирования и конструкций: переменные, массивы, циклы но не обязательны. Если у вас совсем нет опыта в IT, мы поможем вам быстро освоиться.
  • Для тех, кто хочет сменить профессию и хочет войти в IT сферу с нуля.
  • Для тестировщиков, которые хотят перейти в разработку.
  • Для тех, кто работает сисадмином или в технической поддержке и хочет стать частью команды разработчиков.

После обучения вы сможете:

  • Проектировать и реализовывать масштабируемую многомодульную архитектуру приложений независимо от выбранного паттерна presentation слоя.
  • Рисовать высокоэффективные View на Canvas и анимировать их. Если же View вам надоели, то правильно использовать Jetpack Compose для реализации нативного UI.
  • Глубоко разбираться и правильно использовать популярные фреймворки Dagger2, Hilt, OkHttp, RxJava и другие.
  • Покрывать написанные классы unit и интеграционными тестами, а также писать UI тесты используя Espresso С нуля выстраивать инфраструктуру для эффективной сборки приложения, писать CI/CD пайплайны, поднимать контейнеры и собирать приложения в них.

Инструменты, которые освоите

Kotlin, Android SDK, RecyclerView, DataStore & Room, Dagger2 & Hilt, Kotlin Coroutines & RxJava, JUnit, Mockito, Robolectric, Espresso(Kaspresso/Kakao), Gradle, Docker, Jenkins, Android Lint

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

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

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

Обучение состоит из 2-х ступеней и бонусного видеокурса по Java.
Вы последовательно пройдете синтаксис Kotlin, принципы создания приложений и командной разработки, а затем освоите технологии и инструменты Middle+ уровня

Начало обучения
29 сентября
  • Для тех, кто хочет с нуля освоить профессию Android-разработчик
Ступень 1
ВТ 20:00, ПТ 20:00
Junior
  • Изучите язык Kotlin и заложите необходимый базис знаний по разработке
  • Освоите работу с интерфейсом экрана, основы анимации и тестирования
  • Сможете разрабатывать полноценные полезные приложения под Android
Ступень 2
ВТ 20:00, ПТ 20:00
Middle
  • Разбиретесь в Android SDK
  • Научитесь организовывать инфраструктуру: разворачивать системы continuous integration и continuous delivery, выстраивать git flow, поднимать Docker-контейнеры и т.д.
  • Сможете проектировать мультимодульную архитектуру и проводить рефакторинг legacy кода. Освоите Dagger 2 и RxJava, тестирование приложений
  • Разработаете приложение, которое станет образцом продуманной архитектуры, чистого кода, аккуратного дизайна

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


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

Практика


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

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


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

Партнеры

Мы даём качественные знания, которые помогут в получении офферов в перспективных проектах

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

Android developer

Перспективы направления
Средний уровень зарплат:
70 000Junior+ специалист
250 000Middle+ специалист
360 000Senior специалист
1900
актуальных вакансий

Работодатели курса

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

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

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

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

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

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

Программа

1 Ступень

Kotlin

В этом модуле будут рассмотрены основными конструкции языка Kotlin, сможете писать код в kotlin-стиле, использовать kotlin extensions.

Тема 1: Знакомство с курсом

Тема 2: Kotlin #1

Тема 3: Kotlin #2

Тема 4: Kotlin #3

Тема 5: Kotlin #4

Тема 6: Kotlin #5

Тема 7: Kotlin #6

Тема 8: Консультация по ДЗ

Тема 9: Kotlin #7

Core

В этом модуле будут рассмотрены ключевые элементы, на которых строится любое Android приложение.

Тема 1: Activity #1

Тема 2: Activity #2

Тема 3: Activity #3

Тема 4: Android Studio & SDK Tools

Тема 5: Resources #1

Тема 6: View #1

Тема 7: Resources #2

Тема 8: View #2

Тема 9: Консультация по ДЗ

Тема 10: Fragment #1

Тема 11: Fragment #2

Тема 12: RecyclerView #1

Тема 13: RecyclerView #2

Тема 14: Animations

Architecture

В этом модуле будут рассмотрены различные варианты хранения данных, доступа в интернет и многопоточности.

Тема 1: MVVM

Тема 2: Консультация по ДЗ

Тема 3: Dagger2 #1

Тема 4: Dagger2 #2

Тема 5: Hilt

Тема 6: Kotlin Coroutines

Data

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

Тема 1: Сеть

Тема 2: Persistent Storage #1

Тема 3: Persistent Storage #2

Тема 4: Консультация по ДЗ

Тема 5: Service

Тема 6: Periodic Tasks + BroadcastReceiver

Тема 7: Location + Maps

Тема 8: Sensors & Camera

Testing

В этом модуле будут рассмотрено автоматическое тестирование в контексте Android, а также сборка и публикация приложения.

Тема 1: Testing #1

Тема 2: Testing #2

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

Заключительный месяц курса посвящен проектной работе. Свой проект — это то, что интересно писать слушателю. То, что можно создать на основе знаний, полученных на курсе. При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей.

Тема 1: Карьерная консультация

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

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

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

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

2 ступень

Введение

Освежим знания по Kotlin stdlib. Поговорим о kotlin coroutines, их внутреннем устройстве и API.

Тема 1: Выбор темы и организация проектной работы

Asynchronous programming

Тема 1: Kotlin coroutines

Тема 2: Flow

Тема 3: RxJava

Architecture

В этом модуле поговорим про архитектуру в Android приложениях. Рассмотрим популярные архитектурные паттерны и выявим pros & cons каждого из них. Углубимся в ООП паттерны, особое внимание уделим IOC, в частности Dependency Injection: изучим как работает Dagger 2 и используем его для построение многомодульного приложения. Научимся искать явные признаки плохо спроектированного проекта и общие “запахи кода”, и рефакторить проблемные участки кода.

Тема 1: Clean Architecture

Тема 2: MVC+MVP+MVVM

Тема 3: MVI

Тема 4: Dagger

Тема 5: Dagger2.

Тема 6: Hilt

Тема 7: Multi-module project

Тема 8: Multi-module project 2

Тема 9: Navigation & Single Activity

View

Третий модуль посвящен View и всему что с ними связано. Поговорим о View и ViewGroup которые доступны из коробки, погрузимся в их устройство и сравним быстродействие. Рассмотрим инструменты которые предоставляет Android SDK для рисования/рендеринга своих View. Сделаем наше приложение более отзывчивым используя широкие возможности Animator фреймворка. Научимся использовать инструменты для профилирования чтобы быть уверенными что наши вью попадают в ui rendering frame.

Тема 1: Views

Тема 2: Canvas

Тема 3: Animations. часть 1

Тема 4: Animations. часть 2

Тема 5: RecyclerView

Тема 6: Compose 1 часть

Тема 7: Compose 2 часть

Тема 8: Ui Profiling

Data

Здесь мы поговорим о том как получать данные, обрабатывать их и безопасно хранить. Рассмотрим способы получения данных по сети, хранение в persistent и secure хранилищах.

Тема 1: Android Internals

Тема 2: Services

Тема 3: Persistent storage

Тема 4: Network

Тема 5: Securing storage

Testing

В данном модуле рассмотрим различные виды тестов. Начнем с основания пирамиды тестирования - unit тестов, плавно перейдем на интеграционные тесты и закончим на вершине - автоматизированными UI тестами которые позволяют облегчить и ускорить ручное тестирование. Поговорим о таких инструментах как JUnit, Mockito, Robolectric, Espresso, UIAutomator и т.д. Подробно разберем на практике нюансы различных видов тестирования, слабые и сильные стороны, их стоимость и процессы написания/выполнения.

Тема 1: Testing #1

Тема 2: Testing #2

Тема 3: UI Tests

Build process

Этот модуль посвящен инфраструктуре, сборке и деплою приложений. Поговорим о системах сборки, контейнерах, инструментах для CI/CD. Напишем свой pipeline для сборки/тестирования/деплоя приложения.

Тема 1: R8 & Proguard

Тема 2: Android Lint

Тема 3: Gradle API

Тема 4: Gradle optimizations

Тема 5: Кодогенерация

Тема 6: Docker для Android разработки

Тема 7: Jenkins

Тема 8: Занятие «App Distribution & Health Monitoring»

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

Этот модуль посвящен доработке и защите выпускных работ. Работа над проектом начинается с самого первого модуля.

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

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

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

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

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

  • Ступень 1: Вы будете работать над приложением по поиску фильмов. В нем будет функция поиска фильма или сериала, сортировка по контенту или ключевому слову, экраны с детальным описанием фильма, историей и любимыми фильмами, а также настройка уведомлений о выходе нового фильма или эпизода любимого сериала.
  • Ступень 2: Вы напишете тонкий клиент к какому-либо сервису с публичным API. Основной упор будет сделан на качество кода, архитектуру проекта, покрытие тестами, безопасность, красивый и аккуратный дизайн, разбиение на модули (по фичам либо по слоям), процесс сборки на CI и доставке apk.

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

Антон Казаков

Роман Зотов

Android developer

SberDevices

Андрей Мельников

Виталий Раевский

Артур Бадретдинов

Евгений Козочкин

Михаил Валуйский

Android Team Lead платформенной команды

Звук: HiFi-музыка, подкасты

Максим Качинкин

Android Tech Lead

Dodo Engineering

Абакар Магомедов

Николай Кочетков

Алексей Фирсов

Константин Бурцев

разработчик мобильных приложений

OZON

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

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

Алексей Закалдаев
Открытый вебинар
Создание приложения заметок
Николай Кочетков
Открытый вебинар
Основные компоненты приложения Android
Оставьте заявку, чтобы получить доступ ко всем записям прошедших мероприятий. Записи всех мероприятий появятся в этом блоке

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

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

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

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

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


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

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

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