Старт в бэкенде на Python: FastAPI, SQLAlchemy и Docker

Курс для тех, кто уверенно пишет на Python, но ни разу не строил веб-сервис: от первого endpoint'а до сервиса бронирования в Docker с PostgreSQL, тестами и аутентификацией. Один сквозной проект, который не стыдно показать на собеседовании.
Начальный уровень
10-15 часов в неделю
Часть
1 программы →
Сертификат Stepik

Чему вы научитесь

  • Проектировать REST API: какие нужны ручки, какими методами и что каждая возвращает
  • Собирать FastAPI-приложение слоями — routers, services, schemas, infrastructure — через Depends
  • Описывать контракты запросов и ответов на Pydantic и получать документацию бесплатно
  • Писать асинхронный код осознанно: корутины, задачи, конкурентность, отмена, таймауты
  • Хранить данные в PostgreSQL через SQLAlchemy 2.x: модели, связи, ограничения целостности
  • Держать транзакцию под контролем и менять схему базы миграциями Alembic
  • Делать регистрацию и вход: хеширование паролей, токены, проверку владельца и роли
  • Отдавать ошибки единообразно и вести структурированные логи
  • Покрывать сервис тестами на pytest — против настоящего PostgreSQL, а не против моков
  • Упаковывать сервис в Docker-образ и запускать его вместе с базой одной командой

О курсе

FastAPI, PostgreSQL, Docker, async, тесты — в вакансиях эти слова стоят рядом, и каждое по отдельности знакомо. Непонятно другое: как из них собирается работающий сервис. Туториалы этого не показывают — каждый следующий начинается заново с hello world и заканчивается ровно там, где начинается интересное.

Курс закрывает разрыв одним сквозным проектом. Python ты уже знаешь — backend-разработке на нём учишься здесь, с нуля и по порядку.

Что у тебя будет в конце. Сервис бронирования ресурсов — переговорок, оборудования, мест на мероприятиях. Пользователи регистрируются и входят, смотрят список ресурсов, занимают свободный слот, отменяют бронь и видят свои брони. На занятый слот сервис отвечает 409, на чужую бронь — 403, на негодный токен — 401. Результат — git-репозиторий, который поднимается одной командой docker compose up -d --build: у тебя и у любого, кому ты дашь ссылку.

Бронирование выбрано не случайно. Todo-list, на котором обычно учат, не заставляет ни разбираться с транзакциями, ни думать о правах доступа, ни обрабатывать конфликт двух пользователей за один ресурс. Бронирование заставляет — и поэтому по такому проекту видно, что ты действительно умеешь.

Сервис растёт контрольными точками с первого модуля, собирать его в конце одним рывком не придётся. Уже в первом модуле ты поднимаешь работающее приложение и своими руками получаешь от него 201 и 409 — до всякой теории про FastAPI.

Баз данных и SQL знать не нужно. Это не оговорка мелким шрифтом, а решение о том, как устроен курс. Он начинает с того, что такое таблица, строка, первичный и внешний ключ, даёт GUI-клиент, чтобы видеть базу глазами, а не воображать, и работает с данными из Python через ORM. Писать SQL руками не придётся ни разу.

Async разбирается с нуля — отдельный модуль из 34 шагов: event loop, корутины, задачи, конкурентность, отмена, таймауты, вынос блокирующих вызовов. Дальше весь сервис пишется асинхронным, и это уже не магия.

Уроки про Docker открыты бесплатно. Их можно пройти до покупки — и заодно посмотреть, как здесь устроены объяснения, практика и разбор ошибок.

Дорога по темам: HTTP и дизайн REST API → асинхронный Python → FastAPI и Pydantic → структура приложения и первые тесты → Docker → PostgreSQL и модель данных → запросы, запись и миграции → правила бронирования → аутентификация → обработка ошибок и логи → тестирование на pytest → Docker Compose → capstone, где ты расширяешь готовый сервис собственной фичей.

Стек курса: Python 3.12 и uv, FastAPI, Pydantic, asyncio и anyio, SQLAlchemy 2.x (async) с asyncpg, PostgreSQL 16, Alembic, pytest с testcontainers и httpx, basedpyright и ruff, structlog, Docker и Docker Compose.

Курс вводный, и границы у него честные. Он даёт вход в backend целиком — от первого endpoint'а до запущенного контейнера, — но не притворяется исчерпывающим. SQL как язык, устройство PostgreSQL изнутри, архитектурные паттерны, очереди и межсервисное взаимодействие, эксплуатация под нагрузкой — за его пределами. Здесь ты получаешь фундамент, на котором всё это потом строится, и первый собственный сервис.

Для кого этот курс

Курс для тех, кто уверенно пишет на Python, но ни разу не строил веб-сервис. 1. Питонисты-самоучки и разработчики из смежных областей: автоматизация, скрипты, парсеры, телеграм-боты. Код рабочий и полезный, а веб-части в опыте нет. 2. Те, кто целится в первую backend-позицию и видит в каждой второй вакансии FastAPI, PostgreSQL, Docker и тесты — а в своём опыте ни одного пункта. Кому не сюда: если ты уже писал и запускал веб-сервисы на FastAPI, курс будет повторением. Тебе дальше — вглубь баз данных, в архитектуру и в эксплуатацию.

Начальные требования

Что нужно знать

  • Python на уровне уверенного владения языком: функции и классы, исключения, коллекции и comprehensions.
  • Git: commit, branch, clone.
  • uv: курс работает через него и заново его не объясняет. Если ты привык к pip и venv, разберись с uv заранее — он разобран целым уроком в бесплатном курсе основ (ссылка ниже).
  • Про async и await достаточно знать, что такие слова существуют. Остальное курс разбирает с нуля.

Если базовый Python просел, подтяни его бесплатно — курс «Python с нуля: основы языка и автоматизация рутины». Там тот же инструментарий, что и здесь, поэтому переход получается бесшовным.

Наши преподаватели

Как проходит обучение

Формат. Курс полностью текстовый: 14 модулей, 53 урока, 403 шага. Видео нет — есть текст, код, разбор вывода команд и практика.

Проверка знаний. 151 шаг из 403 — проверяемое задание: вопросы с выбором, сопоставления и 20 задач на код с автопроверкой.

Практика переезжает на твою машину — и это главное про формат. Автопроверка держит вход: чистый Python и asyncio, где песочница уместна. Дальше, начиная с модуля про FastAPI, работа уезжает туда, где backend и происходит — в твоё окружение, в твой репозиторий booking-service. Песочница это заменить не может: она не поднимет контейнер с PostgreSQL, не прогонит миграцию и не покажет, что твой сервис отвечает на настоящий запрос. Поэтому вместо неё:

  • 74 шага «Сделай у себя» — пошаговые инструкции с командами и дословно приведённым ожидаемым выводом, включая настоящие трейсбеки, которые ты должен получить;
  • 63 блока «Проверь себя» — чек-лист, по которому видно, что шаг сделан правильно;
  • 68 блоков «Если что-то пошло не так» — типовые сбои с диагнозом и лечением.

Проектные шаги. Каждый модуль, начиная с FastAPI, заканчивается собственным мини-проектом — 12 за курс, по условию и чек-листу «готово, когда».

Capstone. Финальный модуль — доведение сервиса до состояния, которое не стыдно показать, и расширение на выбор из четырёх: лист ожидания, повторяющиеся слоты, модерация ресурсов или история изменений брони. Плюс мини-ADR.

Сообщество. Проходить курс в одиночку не обязательно — у него есть «Гильдия вайба»: помощь, когда застрял, разбор кода, поиск тиммейтов под совместные проекты

Программа курса

загружаем...
Certificate

Сертификат

Сертификат Stepik

Входит в 1 программу

  •    
     
     

Что вы получаете

  • Репозиторий с законченным сервисом: клонируется, поднимается одной командой и работает у любого, кому ты дашь ссылку
  • Стек из вакансий, пройденный руками: FastAPI, Pydantic, asyncio, SQLAlchemy 2.x, PostgreSQL, Alembic, pytest, Docker и Docker Compose
  • Проект в портфолио, который выдерживает вопросы на собеседовании: README, тесты на ключевые сценарии, миграции, чистая структура по слоям и ни одного секрета в git
  • Умение объяснить свои решения — не «я делал по туториалу», а «я сделал так, потому что»
  • 151 проверяемое задание и 12 проектных шагов с чек-листами самопроверки
  • Сертификат Stepik по итогам курса
  • Доступ к сообществу «Гильдия вайба» в Telegram и Discord

Сколько стоит обучение

Old Price: 3 990  Discount Price: 1 995 
Вы попробовали и поняли, что вам сейчас не подходит этот курс? Ничего страшного, мы вернём вам деньги в течение 30-ти дней после покупки.

Часто задаваемые вопросы

Расскажите о курсе друзьям

Old Price: 3 990  Discount Price: 1 995