Чему вы научитесь
- Писать идиоматичный Elixir: сопоставление с образцом, множественные клаузы, with, протоколы и поведения
- Проектировать дерево супервизии и понимать, какой процесс держит состояние и что случится при его падении
- Поднимать HTTP API на Phoenix 1.8, отделяя веб-слой от доменных контекстов
- Работать с PostgreSQL через Ecto: миграции, changesets, композиция запросов, транзакции, Ecto.Multi, блокировки
- Делать аутентификацию по сессии и API-ключам, авторизацию политиками, идемпотентность и версионирование API
- Выносить работу в фон через Oban с ретраями, уникальностью задач и transactional outbox
- Держать real-time часть на PubSub, Channels, Presence и LiveView
- Тестировать конкурентный код: ExUnit, песочница Ecto, Mox, property-based тесты, покрытие в CI
- Снимать телеметрию и метрики Prometheus, читать их и находить узкое место под нагрузкой
- Собирать mix release и Docker-образ, настраивать graceful shutdown и выкатывать версии без простоя
О курсе
Для кого этот курс
Начальные требования
- Опыт разработки серверных приложений на любом языке: HTTP, JSON, REST на рабочем уровне.
- SQL и понимание реляционной модели: таблицы, индексы, транзакции.
- Docker и docker compose для локального PostgreSQL и стенда проекта.
- Умение работать в терминале и с git.
- Знание Elixir, Erlang или OTP не требуется — курс начинается с установки и первого запуска.
Преподаватели курса
Формат курса
Курс текстовый, без видео: 172 урока по 10–13 тысяч знаков, а в уроках с большим объёмом кода — до 20 тысяч. Основной материал — исходный код с комментариями и путями к файлам, вокруг него короткие пояснения, таблицы сравнения вариантов и разбор ошибок.
Уроки читаются последовательно: каждая глава добавляет к проекту Klaxon новый слой, поэтому пропускать главы не стоит. Каждый урок заканчивается практическим заданием и вопросами для самопроверки, каждая глава — практическим уроком, где решения главы ложатся в код. В главах 3–15 после практики идут 5–7 тестовых задач с одним правильным ответом и объяснением.
Всё выполняется локально: PostgreSQL поднимается через docker compose, приложение запускается через Mix, а в последней главе — из собранного релиза. Дедлайнов нет, темп вы выбираете сами; ориентир — одна глава в неделю при 5–8 часах занятий. Вопросы по урокам задаются в комментариях к шагам.
Что вы получите
- 172 текстовых урока с кодом, который выполняется в вашем проекте
- Сквозной проект Klaxon: контексты, миграции, воркеры Oban, каналы и LiveView, тесты, бенчмарки, релиз и docker compose
- 78 тестовых задач с объяснениями к главам 3–15
- Практическое задание и вопросы для самопроверки в конце каждого урока
- Готовые решения повторяющихся задач: идемпотентность запросов, дедупликация, circuit breaker, лимитер, outbox, структурные логи, метрики