Kotlin Backend Developer. Professional
Профессиональная backend-разработка на Kotlin
29 ноября
Professional
5 месяцев
Онлайн
Вт/Пт 20:00 Мск
Для кого этот курс?
1. Для разработчиков на Java. Изучение бэкенд-разработки на Kotlin будет более легким и интуитивным, поскольку Kotlin полностью совместим с Java и может использоваться вместе с уже существующим Java-кодом
2. Для опытных разработчиков других языках программирования. Синтаксис Kotlin – прост и выразителен. Освоить бэкенд-разработку на Kotlin просто, если вы уже владеете PHP, Python, JavaScript, C#
3. Для мобильных разработчиков. Сможете сохранить единый язык программирования на фронтенде (Android) и на бэкенде. Это упростит командную работу, повысит эффективность разработки
4. Для Kotlin бэкенд-разработчиков. Узнаете о современных практиках разработки: о чистой архитектуре, микросервисах, технологиях высокой доступности и обработке больших данных
Необходимые знания
- опыт программирования на любом языке ООП
- SQL
- навыки работы с Linux
Будет плюсом
- опыт программирования на Java
- знание шаблонов проектирования
- умение писать чистый код
- навыки использования git
Перед началом обучения
- Установите Ubuntu, Docker, Docker-Compose, Intellij и aws-cli
- Требования к ПК: не менее 8 ГБ оперативной памяти.
Что вам даст этот курс?
Вы узнаете, как разрабатывать гибкие и высокопроизводительные серверные приложения на языке Kotlin. Преподаватели на вебинарах покажут пример того, как разрабатывается проект маркетплейса: от идеи и постановки задачи – до конечного решения
Вы научитесь:
- использовать язык Kotlin для разработки серверных приложений
- создавать приложения для разных платформ с помощью Kotlin Multiplatform: JS, JVM, Native (Linux, Windows, MacOs, Android, iOS)
- применять асинхронное и многопоточное программирование с корутинами
- использовать OpenAPI и Kotlin Multiplatform и выполнять интеграцию бэкенд-приложения с различным фронтендом
- использовать Kotlin вместе с 10 фреймворками, включая Spring и Ktor, а также с бессерверными библиотеками
- реализовывать асинхронный транспорт с применением WebSocket, RabbitMQ и Kafka
- строить хранилища на базе SQL, NoSQL и NewSQL: Postgres, Cassandra, ArcadeDb
- писать приложения с монолитной, микросервисной и бессерверной архитектурой
- разрабатывать гибкую и надёжную бизнес-логику любой сложности, используя инструменты Kotlin DSL, ООП и null-safety
- проектировать архитектуру приложений, применяя модульную разработку, DDD, TDD, MDD
- формировать архитектуру приложения с учётом требований законодательства в области защиты информации
- внедрять в приложения элементы BI, чтобы получать аналитические отчёты по функционированию и бизнес-процессам
Легенда курса
Легендой курса является разработка стартапа. В рамках легенды обсуждается реализация экстремальных проектов, в которых сочетаются высокая неопределенность и жесткие ограничения по времени и ресурсам.
Процесс обучения
У нас нет предзаписанных уроков!
Занятия в OTUS – это онлайн-вебинары. Преподаватели-практики помогут погрузиться в теорию, обучат на реальных примерах, расскажут о необходимых в работе инструментах. Вы всегда сможете задать вопрос и получить обратную связь.
И самое главное – сможете практиковаться!
Разработайте бэкенд приложения
От постановки задачи – до продуктового развёртывания
Учитесь у экспертов
Наши преподаватели – асы разработки со средним стажем 10 лет
Изучите полезные инструменты
Более 10 фреймворков, в т.ч. Spring, Ktor, RabbitMQ, Kafka, SQL, NoSQL, NewSQL
Партнеры
- Разместите резюме в базе OTUS: так наши партнёры смогут пригласить вас на интервью
- Участвуйте в карьерных мероприятиях: там мы разбираемся, как составить резюме
Kotlin Backend Developer
Работодатели курса
Формат обучения
Интерактивные вебинары
2 занятия по 2 ак.ч. в неделю. Доступ к записям и учебным материалам – навсегда
Практика
Итоговая проектная работа усилит знания, а её успешная защита – откроет новые карьерные возможности
Активное комьюнити
Общайтесь с преподавателями на вебинарах и в закрытом Telegram-чате, получайте развернутое ревью на ДЗ
Проектная работа
За время обучения вы разработаете собственный проект для портфолио – готовое приложение для стартапа. Для выпускного проекта вы можете использовать реальную производственную задачу, развить собственную идею или взять учебное задание. В результате вы научитесь применять изученные инструменты, овладеете навыками работы в условиях экстремальных проектов
Программа
Введение в Kotlin
Цель модуля: познакомить студентов с общими сведениями о языке, изучить синтаксис Kotlin, познакомиться с наиболее базовыми элементами языка. Модуль обзорный, в нем не планируется глубокое изучение всех элементов языка. Такое изучение будет происходить на практике в течении всей работы над выпускным проектом. Для работы потребуются: JDK 11, git, Intellij Idea Community Edition или GigaIDE от Сбера. Требования к ПК: памяти не менее 8 ГБ, рекомендуется не менее 16 ГБ. Рекомендуется установить Linux
Тема 1: Введение в курс // ДЗ
Тема 2: Базовые элементы Kotlin
Тема 3: Функциональные элементы Kotlin
Тема 4: Объектно-ориентированное программирование
Расширенные возможности Kotlin
Цель модуля: познакомиться с расширенными возможностями языка Kotlin, знание которых отличает квалифицированного разработчика. Изучаемые темы частично являются обязательными для разработчика на Kotlin (корутины, DSL), частично опциональными (Multiplatform, интероперабельность с другими языками), знанием которых можно выгодно отличиться на собеседовании.
Тема 1: Предментно ориентированные языки (DSL) // ДЗ
Тема 2: Конкурентность с корутинами
Тема 3: Конкурентность с Sequence и Flow-потоками
Тема 4: Мультиплатформенная разработка
Тема 5: Интероперабельность с другими языками
Тема 6: Расширенные возможности Gradle
Подготовка к разработке
В модуле обсуждается этап подготовки к старту проекта, который предшествует началу разработки. Среди тем рассматривается работа с идеей проекта, маркетинговая проработка, формирование требований и организация тестирования. Также обсуждается целевая архитектура проекта, инфраструктура сборки и функционирования. Модуль важен тем, что позволяет выполнить планирование и проработку выпускного проекта студента. Результатами работы в учебном модуле будут следующие: 1) список требований и критериев приемки к выпускному проекту; 2) описание API, с которым будет работать выпускной проект студента; 3) готовая инфраструктура для тестирования, развертывания и мониторинга выпускного проекта.
Тема 1: Маркетинг и аналитика проекта // ДЗ
Тема 2: Общие принципы защиты информации
Тема 3: Архитектурные принципы и архитектура проекта
Тема 4: Основы DevOps и среда выполнения приложения
Разработка API
Модуль посвящен разработке API и освоению различных элементов ООП. В нем студент разработает собственное API для выпускного проекта, сделает комплект различных классов для внутреннего использования в приложении, а также научится делать мапинг между этими сущностями. Также в модуле обсуждаются вопросы тестирования и мониторинга системы на базе логов. Обязательным результатом работы по учебному модулю являются: 1) API; 2) внутренние модели; 3) маперы. Опционально студент может освоить следующие темы: 1) разработка сквозных и интеграционных тестов; 2) разработка библиотек логирования.
Тема 1: Создаем интерфейс с помощью OpenAPI // ДЗ
Тема 2: Создаем внутренние модели и маперы
Тема 3: Тестирование проекта
Тема 4: Мониторинг, сбор логов и метрик
Фреймворки и асинхронный транспорт
Целью модуля является разработка серии приложений с применением нескольких фреймворков и транспортных интерфейсов, которые уже на самом раннем этапе разработки могут корректно отвечать и обеспечивать интеграцию нашего будущего сервиса с другими командами (фронтенд, смежные команды), не смотря на то, что до завершения проекта еще далеко. В рамках модуля будут обсуждаться HTTP-фреймворки Spring и Ktor, а также асинхронные транспортные интерфейсы WebSocket, RabbitMQ и Kafka.
Тема 1: Разработка приложения со Spring // ДЗ
Тема 2: Разработка приложения с KTOR
Тема 3: Транспорт с WebSocket
Тема 4: Транспорт с RabbitMQ
Тема 5: Транспорт с Kafka
Тема 6: Разработка бессерверного приложения
Бизнес-логика проекта
В этом модуле обсуждается создание бизнес-логики проекта. В соответствии с принципами чистой архитектуры, бизнес-логика выносится в отдельный модуль (Gradle-подпроект) и становится независимой от конкретной реализации транспортных моделей, баз данных, фреймворков и пр. Кроме того, шаблон проектирования Цепочка обязанностей позволяет бизнес-логику сделать максимально гибкой. Доработка вашего приложения при изменении постановки задачи будет простой, быстрой и дешевой. В рамках модуля планируется разработка библиотеки для шаблона Цепочка обязанностей, внедрение ее в приложение, а также разработка валидаторов для всех входных данных.
Тема 1: Основы бизнес-логики и разработка библиотеки для шаблона CoR // ДЗ
Тема 2: Создание модуля бизнес-логики с использованием шаблона Цепочка Ответственности.
Тема 3: Шаг валидации в бизнес-цепочке
Работа с базами данных
В модуле рассматривается следующие основные вопросы: - различные аспекты работы с базами данных, включая формирование миграций, особенности обслуживания конкурентного доступа к объектам в БД и др.; - исследование различных баз данных из разных поколений (SQL, NoSQL, NewSQL), которые либо активно применяются в современной разработке, либо активно развиваются и стремительно набирают популярность; - гибкая интеграция в приложение хранилищ, позволяющая легко и дешево заменять одну базу данных на другую.
Тема 1: Практические принципы работы с БД // ДЗ
Тема 2: Создание репозитария
Тема 3: Конкурентный доступ к БД
Тема 4: Репозитарий с PostgreSQL
Тема 5: Репозитарий с Cassandra
Тема 6: Репозитарий с графовой базой данных
Развитие бизнес-логики проекта
В рамках модуля развития бизнес-логики обсуждаются различные аспекты расширения возможностей приложения, которыми обычно обрастают любые реальные проекты. Также в модуле рассматриваются различные математические алгоритмы и подходы типа машины состояний и машинного обучения. В рамках модуля студенты узнают как выполнять контроль состояний системы, обеспечивать авторизацию в приложении, а также интегрироваться с системами искусственного интеллекта.
Тема 1: Машина состояний
Тема 2: Авторизация и аутентификация в бэкенде
Тема 3: Введение в машинное обучение
Тема 4: Реализация алгоритмов ML в Kotlin-проекте
Проектная работа
Заключительный месяц курса посвящен доработке выпускных проектов студентов. В течение этого месяца ожидается доделка всех оставшихся домашних заданий и подготовка к защите проекта.
Тема 1: Обзор значимых проектов на Kotlin, которые выходят за рамки курса
Тема 2: Консультация по проектам и домашним заданиям
Тема 3: Защита проектных работ
Также вы можете получить полную программу, чтобы убедиться, что обучение вам подходит
Преподаватели
Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания
Прошедшие
мероприятия
Корпоративное обучение для ваших сотрудников
- Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
- Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
- OTUS проверяет знания студентов перед стартом обучения и после его завершения
- Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
- Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
- OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год
Отзывы
Сертификат о прохождении курса
OTUS осуществляет лицензированную образовательную деятельность. В конце обучения вы получите сертификат OTUS о прохождении курса, а при выполнении проектной работы – удостоверение о повышении квалификации
После обучения вы:
- Освоите Kotlin, научитесь создавать высокопроизводительные серверные приложения, сможете участвовать в разработке экстремальных проектов
- Сможете совместить Kotlin и Spring, научитесь использовать KTOR, Kotlin Multiplatform, Kotless
- Научитесь пользоваться востребованными инструментами. Например, Cassandra и ELK-stack
- Получите удостоверение о повышении квалификации и сертификат OTUS
Kotlin Backend Developer. Professional
Полная стоимость
Стоимость указана для оплаты физическими лицами
вычета до 13% стоимости обучения. Пройдите тестирование и менеджер вас проконсультирует
+7 499 938-92-02 бесплатно