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

Android Developer

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

27 марта

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 Team Lead платформенной команды

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

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

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

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

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

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

OZON

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

Роман Зотов

Android developer

SberDevices

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

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

Android Tech Lead

Dodo Engineering

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

Ближайшие мероприятия

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

Инструменты Андроид для кроссплатформенной разработки
Николай Кочетков
В рамках вебинара:
- напишем простое приложение под андроид, игру крестики-нолики;
- выделим логику в кросс-платформенный модуль;
- напишем визуальную часть для десктоп с использованием Compose multiplatform;
- запустим приложение на разных платформах.

В результате:
- используем одну кодовую базу андроид для запуска на нескольких платформах;
- покажем, почему выгодно начинать ui разработку именно с Андроид;
- покажем, что можно начать с самой популярной мобильной платформы и перейти в смежные области, используя подход write once and run anywhere.

Для написания кода используем стандартный инструментарий андроид-разработчика: android studio, intellij idea.

Урок будет полезен тем, кто хочет начать свой путь в качестве UI программиста, а также всем, кто хочет начать программировать под мобильные устройства и развиваться в сторону кроссплатформенных приложений.
...
21 марта в 17:00
Открытый вебинар

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

Максим Качинкин
Открытый вебинар
Jetpack Compose: Modifiers
Роман Зотов
Открытый вебинар
Приложение “Погода” за 60 минут
Оставьте заявку, чтобы получить доступ ко всем записям прошедших мероприятий. Записи всех мероприятий появятся в этом блоке

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

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

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

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

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


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

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

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