Kotlin Backend Developer. Professional
Профессиональная backend-разработка на Kotlin
25 октября
Professional
5 месяцев
Онлайн
Ср 19:00 Мск, Сб 11:00 Мск
Для кого этот курс?
1. Для разработчиков, уже знакомых с Java. Изучение бэкенд-разработки на Kotlin будет более легким и интуитивным, поскольку Kotlin полностью совместим с Java и может использоваться вместе с уже существующим Java-кодом.
2. Для опытных разработчиков других языков программирования. Если у вас уже есть опыт работы с другими языками программирования, такими как PHP, Python, JavaScript, C# и другими, изучение бэкенд-разработки на Kotlin может быть несложным, благодаря простому и выразительному синтаксису этого языка программирования.
3. Для мобильных разработчиков. Использование Kotlin в бэкенд-разработке позволит вам сохранить единый язык программирования как на фронтенде (Android) так и на бэкенде. Это упростит командную работу и повысит эффективность разработки, поскольку Android-разработчики уже знают Kotlin и могут использовать свои навыки на бэкенде.
4. Для Kotlin бэкенд-разработчиков. Даже если у вас есть немалый опыт разработки на 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 совместно с различными фреймворками: Spring, Ktor, бессерверными библиотеками; реализовывать асинхронный транспорт с применением WebSocket, RabbitMQ и Kafka;
- строить хранилища на базе SQL, NoSQL и NewSQL (Postgres, Cassandra, ArcadeDb); писать приложения с монолитной, микросервисной и бессерверной архитектурами;
- разрабатывать гибкую и надежную бизнес-логику любой сложности, используя инструменты Kotlin DSL, ООП и null-safety; проектировать архитектуру приложений с применением таких подходов как модульная разработка, DDD, TDD, MDD;
- учитывать требования законодательства в области защиты информации при формировании архитектуры приложения; внедрять элементы BI в приложения для получения аналитических отчетов по функционированию и бизнес-процессам.
Легенда курса
Легендой курса является разработка стартапа. В рамках легенды обсуждается реализация экстремальных проектов, в которых сочетаются высокая неопределенность и жесткие ограничения по времени и ресурсам.
Процесс обучения
Обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в телеграм-чате курса, сдача домашних работ и получение обратной связи от преподавателя.
Вебинары проводятся 2 раза в неделю по 1,5 часа и сохраняются в записи в личном кабинете. Вы можете посмотреть их в любое удобное для вас время.
В ходе обучения вы будете выполнять домашние задания. Каждое из них посвящено одному из компонентов вашего выпускного проекта.
После выполнения всех домашних заданий вы получите готовый выпускной проект.
Трудоустройство
- Карьерные мероприятия в сообществе
Публичный разбор резюме
Публичное прохождение собеседования и воркшопы - Разместите свое резюме в базе OTUS и сможете получать приглашения на собеседования от партнеров
Kotlin Backend Developer
Работодатели курса
Формат обучения
Интерактивные вебинары
2 занятия по 2 ак. часа в неделю. Доступ к записям и материалам остается у вас навсегда
Практика
Домашние задания + проектная работа, которая усилит ваше портфолио
Активное комьюнити
Общайтесь с преподавателями голосом на вебинарах и в Telegram-чате
Выпускной проект
За время обучения вы разработаете собственный проект для портфолио. Тему для выпускного проекта вы выбираете либо самостоятельно, либо из предложенных преподавателями.
В проекте вы по своему выбору применяете те инструменты, которые рассматриваются на вебинарах.
Программа
Введение в Kotlin
Цель модуля: познакомить студентов с общими сведениями о языке, изучить синтаксис Kotlin, познакомиться с наиболее важными компонентами экосистемы, включая Gradle, DSL и корутины, сделать программу и автоматизированные тесты на Kotlin. Для работы потребуются: JDK 11, git, Intellij Idea Community Edition или Ultimate.требования к ПК: памяти не менее 8 ГБ, рекомендуется не менее 16 ГБ.
Тема 1: Введение в курс // ДЗ
Тема 2: Основные конструкции Kotlin
Тема 3: Объектно-ориентированное программирование
Тема 4: Предментно ориентированные языки (DSL)
Тема 5: Асинхронное и многопоточное программирование с корутинами
Тема 6: Асинхронное и многопоточное программирование с каналами
Тема 7: Kotlin Multiplatform и интероперабельность с JVM, JS
Старт проекта и API
В модуле обсуждается этап подготовки к старту проекта, который предшествует началу разработки. Среди тем рассматривается работа с идеей проекта, маркетинговая проработка, формирование требований и организация тестирования. Также обсуждается целевая архитектура проекта. Результатом работы над модулем будет список требований, которые предъявляются к учебному и выпускным проектам. Также рассматривается блок компонентов, с которых начинается (должна начинаться) разработка крупного проекта - интерфейс между бэкендом и клиентами (фронтенд или API-клиенты).
Тема 1: Маркетинг и аналитика проекта // ДЗ
Тема 2: Основы DevOps и среда выполнения приложения
Тема 3: Тестирование проекта
Тема 4: Архитектурные принципы и архитектура проекта
Тема 5: Создаем интерфейс с помощью OpenAPI // ДЗ
Тема 6: Создаем внутренние модели и маперы
Тема 7: Практика по инициализации проекта и API
Реализация REST и асинхронного транспорта с фреймворками
Изучить особенности использования фреймворков Spring, KTOR и Kotless, а также создать три приложения на Kotlin в монолитной, микросервисной и бессерверной архитектурах.
Тема 1: Разработка приложения со Spring // ДЗ
Тема 2: Разработка микросервисного приложения с KTOR
Тема 3: Разработка бессерверного приложения
Тема 4: Транспорт с WebSocket // ДЗ
Тема 5: Транспорт с RabbitMQ
Тема 6: Транспорт с Kafka
Тема 7: Практика по REST и асинхронному транспорту с фреймворками
Модуль бизнес-логики проекта
В этом модуле обсуждается создание бизнес-логики проекта. Бизнес-логика выносится в отдельный JVM-модуль/Gradle-подпроект и становится независимым от конкретной реализации транспортных моделей, баз данных, фреймворков и пр. Кроме того, шаблон проектирования Цепочка обязанностей позволяет бизнес-логику сделать максимально гибкой. Доработка вашего приложения при изменении постановки задачи будет простой, быстрой и дешевой.
Тема 1: Сбор логов и метрик // ДЗ
Тема 2: Основы бизнес-логики и разработка библиотеки для шаблона CoR
Тема 3: Создание модуля бизнес-логики с использованием шаблона Цепочка Ответственности.
Тема 4: Шаг валидации в бизнес-цепочке
Тема 5: Машина состояний
Тема 6: Практика по созданию бизнес-уровня backend-приложения
Работа с базами данных в Kotlin-проекте
В модуле рассматривается два основных вопроса: - исследование различных баз данных, которые либо активно применяются в современной разработке, либо активно развиваются и стремительно набирают популярность; - гибкая интеграция в приложение хранилищ, позволяющая легко и дешево заменять одну базу данных на другую.
Тема 1: Создание репозитария // ДЗ
Тема 2: Конкурентный доступ к БД
Тема 3: Репозитарий с PostgreSQL
Тема 4: Репозитарий с Cassandra
Тема 5: Репозитарий с графовой базой данных
Тема 6: Практика по работе с базами данных в backend-приложении
Защита информации и управление пользователями
Модуль очень актуален в связи с ужесточением законодательства в большинстве стран мира в области защиты информации и управления персональными данными. В нем рассматриваются как особенности требований законодательства, так и виляние их на архитектуру проекта. Дополнительно реализуем аутентификацию и авторизацию в учебном проекте.
Тема 1: Общие принципы защиты информации // ДЗ
Тема 2: Авторизация и аутентификация в фреймворках
Тема 3: Практика по управлению пользователями
Проектная работа
Заключительный месяц курса посвящен проектной работе. Свой проект — это то, что интересно писать слушателю. То, что можно создать на основе знаний, полученных на курсе. При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей.
Тема 1: Обзор значимых проектов на Kotlin, которые выходят за рамки курса; выбор темы проекта
Тема 2: Консультация по проектам и домашним заданиям
Тема 3: Защита проектных работ
Также вы можете получить полную программу, чтобы убедиться, что обучение вам подходит
Преподаватели
Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания
Ближайшие мероприятия
Открытый вебинар — это настоящее занятие в режиме он-лайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам.
- рассмотрим общую теорию о DSL: назначение, особенности, практика;
- попрактикуемся в создание DSL на примере JsonBuilder;
- рассмотрим возможности Kotlin, полезные для создания DSL.
В результате вебинара:
- узнаете, как создавать собственные DSL и применять их при создании приложения;
- познакомитесь с замыканиями и extension-методами.
Вебинар будет полезен Kotlin-разработчикам и тем, кто рассматривает этот язык для изучения.
Прошедшие
мероприятия
Возможность пройти вступительное тестирование повторно появится только через 2 недели
Результаты тестирования будут отправлены вам на email, указанный при регистрации.
Тест рассчитан на 30 минут, после начала тестирования отложить тестирование не получится!
Корпоративное обучение для ваших сотрудников
- Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
- Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
- OTUS проверяет знания студентов перед стартом обучения и после его завершения
- Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
- Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
- OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год
Отзывы
Сертификат о прохождении курса
OTUS осуществляет лицензированную образовательную деятельность. В конце обучения вы получите сертификат OTUS о прохождении курса.

После обучения вы:
- освоите Kotlin и научитесь создавать на нем высокопроизводительные серверные приложения; сформируете навык разработки экстремальных проектов;
- сможете подружить Kotlin и Spring, научитесь использовать KTOR, Kotlin Multiplatform, Kotless; получите спектр как классических, так и самых современных инструментов, на которые есть высокий неудовлетворенный спрос на рынке (Cassandra, ELK-stack и др.);
- получите материалы по всем занятиям (видеозаписи занятий, презентации, примеры кодов).
Kotlin Backend Developer. Professional
Стоимость в рассрочку
Стоимость указана для оплаты физическими лицами
вычета до 13% стоимости обучения. Пройдите тестирование и менеджер вас проконсультирует
+7 499 938-92-02 бесплатно