Чему вы научитесь
- Разрабатывать идиоматичный, лаконичный и безопасный код на Kotlin Core, полностью преодолев паттерны Java-мышления и исключив появление NullPointerException в рантайме.
- Проектировать строгие объектные и доменные модели распределенных систем, используя sealed-структуры, алгебраические типы данных и иммутабельные data-классы.
- Защищать внутреннюю бизнес-логику и границы инкапсуляции модулей с помощью модификатора visibility internal и пре-валидационных контрактов.
- Контролировать скрытую рантайм-стоимость синтаксического сахара, оптимизируя мутации через метод copy() и предотвращая логические баги при деструктуризации.
- Оптимизировать CPU-bound задачи на уровне компилятора K2, понимая механизмы генерации проверок на null, работу FIR и бэкенда Kotlin IR.
- Решать проблемы стирания типов (Type Erasure) с помощью inline-функций и reified-параметров в обобщенном программировании.
- Управлять вариантностью типов (in/out) на уровне объявлений и вызовов, обеспечивая строгую типобезопасность на стыке с Java Interop.
- Применять протоколы безопасной обработки платформенных типов (Type!) при интеграции со сторонними Java-библиотеками, минимизируя рантайм-риски.
- Проводить низкоуровневый реверс-инжиниринг и декомпиляцию сложного Kotlin-кода в Java байт-код для поиска узких мест производительности.
- Снижать давление на Garbage Collector (GC) в высоконагруженных циклах бэкенда, эффективно используя @JvmInline value-классы и плоскую структуру памяти.
О курсе
Хардкорный курс по Advanced Kotlin и низкоуровневому JVM-инжинирингу. Разберитесь во внутреннем устройстве компилятора K2, байт-коде, тонкостях асинхронности (Coroutines vs Loom), реактивных стримах и Arrow. Научитесь выстраивать Enterprise-архитектуру на Spring Boot и Ktor без утечек памяти в JPA, проектировать высоконагруженные Lock-Free алгоритмы, оптимизировать Gradle-сборки и проводить глубокое профилирование в продакшене.
Для кого этот курс
• Senior/Middle+ Java-разработчики: чтобы перестать писать на Kotlin как на «Java с лаконичным синтаксисом», искоренить legacy-привычки (Optional, static, Utils-пустышки) и понять скрытую цену синтаксического сахара.
• Kotlin Backend-инженеры: чтобы прокачаться в High-Load, разобраться в архитектуре компилятора K2, освоить Lock-Free алгоритмы, метапрограммирование (KSP) и оптимизацию памяти JVM.
Начальные требования
Чтобы обучение было максимально эффективным и студент не потерялся в нюансах низкоуровневого рантайма, необходим базовый фундамент:
- Опыт в бэкенд-разработке: от 2–3 лет коммерческого опыта на платформе JVM (Java или Kotlin).
- Знание базы Java/JVM: уверенное понимание объектной модели Java, принципов работы Garbage Collector (многоуровневая куча), основ Java Memory Model (JMM) и базовой многопоточности (
Threads,ExecutorService). - Опыт работы со Spring Boot: базовые навыки построения корпоративных приложений, понимание концепций Dependency Injection (DI) и работы с базами данных (реляционные БД, ORM/JPA).
- Инструменты сборки: опыт работы с Gradle (желательно на уровне сборки многомодульных проектов).
Преподаватели курса
Как проходит обучение
Обучение построено в полностью асинхронном формате для самостоятельного изучения:
- Инженерные лонгриды: подробный текстовый разбор сложных архитектурных концепций, логики компилятора K2 и низкоуровневых оптимизаций.
- Схемы и таблицы: наглядные технические схемы рантайма (стейт-машины, структуры памяти) и сравнительные матрицы для быстрого усвоения информации.
- Листинги кода: детальный разбор реальных фрагментов кода, байт-кода после декомпиляции и примеров проектирования.
- Проверочные тесты: глубокие тесты после каждой темы для закрепления теории и разбора неочевидных капканов рантайма.
- Гибкий темп: текстовые материалы доступны в любое время, что позволяет учиться по индивидуальному графику.
Что вы получите
- Глубокое понимание рантайма JVM, модели памяти JMM и внутренних механизмов работы компилятора K2
- Навыки оптимизации High-Load систем на Kotlin и минимизации давления на Garbage Collector
- Умение проектировать отказоустойчивые асинхронные слои на корутинах и реактивных Flows
- Готовые матрицы сравнения технологий для принятия взвешенных архитектурных решений
- Понимание капканов интеграции Kotlin с экосистемой Spring Boot, JPA/Hibernate и Jackson
- Навыки выстраивания процессов инкрементальной миграции легаси-проектов с Java на Kotlin
- Пожизненный доступ к текстовой базе знаний курса со схемами, таблицами и примерами декомпиляции кода
Нагрузка
Свободно