← назад к программе

Вы пишете на Python: ручки на FastAPI или Django, скрипты, тесты. Задачи закрываются, а дальше движения нет: интересные куски системы достаются кому-то другому, и на разговоре о сильной роли выясняется, что не хватает архитектуры и понимания, как сервисы живут вместе: транзакции, брокеры, выкат, наблюдаемость.

Проблема почти никогда не в способностях. Знания собирались случайно: статья тут, видео там, задача на работе третья. Получается решето: где-то глубоко, а рядом дыра, о которой вы сами не знаете. Эта программа закрывает решето по порядку и на одной сквозной системе на FastAPI и SQLAlchemy.

Земля под профессией поехала: написание кода перестало быть узким местом, узким стало понять, что именно нужно сделать, и убедиться, что сделано верно. Почему так и куда ведёт дорога — в общей статье «Зачем этот курс» и в «Кто такой продукт-инженер»; здесь дальше только про программу «Backend · Python».

Что внутри программы

язык 5 фаз данные 6 фаз сеть и API 3 фазы брокеры и сервисы 2 фазы инфраструктура 6 фаз ИИ в работе 2 фазы архитектура 3 фазы методология и роль 3 фазы

Блоки идут по порядку, внутри блока фазы тоже упорядочены; следующая опирается на предыдущие.

  • язык — Основы языка: Python, Алгоритмы и структуры данных, Git и модели ветвления, Фундамент: ядро FastAPI, Асинхронность и конкурентность.
  • данные — SQL с нуля, PostgreSQL: модель и запросы, PostgreSQL: эксплуатация и масштаб, SQLAlchemy и ORM, Другие хранилища, Принципы и паттерны проектирования.
  • сеть и API — Сетевой фундамент, API: REST и контракты, Безопасность и авторизация.
  • брокеры и сервисы — Брокеры и распределённые системы, Микросервисы: архитектура и проблемы.
  • инфраструктура — Контейнеры: Docker, Kubernetes и graceful shutdown, Облака, CI/CD, Качество: стратегия тестов, Наблюдаемость и диагностика.
  • ИИ в работе — Работа с AI-агентами, Создание LLM-приложений.
  • архитектура — Системный дизайн и архитектурный выбор, Domain-Driven Design, Архитектурные паттерны сервиса.
  • методология и роль — Методологии и процесс разработки, Продукт-инженер: роль и практика, Use Case Pattern и сквозной кейс.

Если нужен только кусок пути, ориентируйтесь по блокам: откройте список фаз и посмотрите, где вам неуютно, обычно это видно с первого взгляда.

Что вы будете уметь в конце

  • Читать чужой Python-сервис. Открыть незнакомый проект на FastAPI и за час понять, где данные, как устроены зависимости и сессии, где await блокирует цикл событий, что сломается первым.
  • Принимать решения с обоснованием. Не «возьмём Kafka, потому что модно», а «здесь очередь, потому что вот эти требования, и вот цена»: сравнение хранилищ, брокеры, системный дизайн.
  • Проектировать сервис от задачи бизнеса до схемы данных и контракта: модель PostgreSQL, SQLAlchemy и Alembic, REST и контракты, DDD и гексагональная раскладка на пакетах Python.
  • Понимать работающую систему и находить причину, когда ей плохо: GIL и asyncio, профилирование, эксплуатация PostgreSQL, Kubernetes, логи, метрики и трассировка.
  • Работать с ИИ-агентом так, чтобы он ускорял, а не размножал ошибки: от скиллов и MCP до LLM-приложений с RAG и инструментами на Python.

Как устроено прохождение

Фазы идут по порядку, и каждая опирается на предыдущие: прыгать вперёд обычно больно. Внутри фазы статьи помечены: ★ обязательно — скелет, без которого следующие статьи будут непонятны; дополнительно — глубина по желанию; костёр «что пощупать» — у статьи есть рабочий код в практикуме, и раздел с тем же названием ведёт в репозиторий, а «Сделаем сами» — в ветку с красными тестами.

После каждой фазы — тест. Не определения, а описанная ситуация и выбор, что в ней произойдёт. Порог один для всех фаз — 80% верных ответов, попытки не ограничены: кабинет показывает, какие вопросы не сошлись, вы возвращаетесь к статьям и сдаёте снова.

Тренажёры — практика: запросы к живой PostgreSQL, ручки REST на песочнице, код-ревью чужих модулей, доска системного дизайна, алгоритмы на Python, разбор инцидентов, Mongo, Redis и Neo4j, мок-интервью. На больших темах есть разбор: билет с задачами, которые надо показать руками и объяснить вслух.

Рядом ИИ-ментор и куратор. Ментору можно задать вопрос по абзацу статьи или попросить подсказку по задаче; расход считается в шишках, дневном запасе обращений. Куратор — живой человек, к нему уходит то, с чем модель не справилась.

Статьи открыты всем и читаются без входа. Тесты, тренажёры, разборы и ИИ-ментор живут в кабинете: вход через Яндекс ID даёт три дня полного доступа без карты, дальше подписка, условия на странице программ. Подробно про устройство программы, значки и помощь — в общей статье «Зачем этот курс».

Демо-пример: marketplace-system-python на GitHub

Тот же маркетплейс из разбора «Как разбить систему на сервисы», написанный на Python: FastAPI, SQLAlchemy 2 с asyncpg, Alembic, Redis. Репозиторий растёт вместе с программой: учебный каталог и первые шаги практикума уже на месте, взрослые сервисы добавляются по плану; каждая Python-статья курса со значком костра ведёт в его код.

клонировать репозиторий git clone поднять стенд: docker compose PostgreSQL и Redis в контейнерах прогнать тесты зелёные на настоящей базе запустить сервис и дёрнуть ручку curl отвечает карточкой переключиться на ветку шага

Пять команд от клона до первого задания; дальше каждая статья со значком костра ведёт в конкретный файл этого репозитория.

Что понадобится: Python 3.12 или новее и Docker.

git clone https://github.com/remodov/-https-github.com-remodov-marketplace-system-python.git marketplace-system-python
cd marketplace-system-python
docker compose -f infra/compose.yaml up -d postgres-catalog-starter redis
python3 -m venv .venv && source .venv/bin/activate
pip install -e "services/catalog-starter[dev]"
cd services/catalog-starter
pytest                                        # тесты на настоящей PostgreSQL
uvicorn catalog_starter.main:app --port 8182  # сервис на 8182, схему накатит Alembic
curl -s -X POST localhost:8182/products -H 'Content-Type: application/json' \
  -d '{"title":"Беспроводная мышь","price":1990.00,"stock":7}'
curl -s localhost:8182/products

Дальше по шагам: git switch step-02-read-endpoint открывает задание второго шага — условие в services/catalog-starter/TASK.md, один тест красный; ветка step-02-read-endpoint-solution рядом — эталон. План пятнадцати шагов — в docs/practicum/PLAN.md.

Репозиторий: https://github.com/remodov/-https-github.com-remodov-marketplace-system-python.

Сколько времени это займёт

ПрограммаСтатей и фазТолько чтениеС тестами, тренажёрами и практикумом
Backend · Python418 статей, 30 фазоколо 95 часов215–235 часов

При часе в день по будням полный путь занимает 9 месяцев, только обязательные статьи с тестами — 4 месяца; при двух часах в день сроки делятся примерно пополам. Чистое чтение посчитано по объёму текста, к нему добавлены тесты фаз, тренажёры и практикум.

Как проходить, чтобы дошло до конца

  • Не читайте подряд без практики. После фазы про базы данных откройте тренажёр и напишите десяток запросов: прочитанное без применения выветривается за неделю.
  • Не гонитесь за полнотой. Пройдите обязательные статьи, за остальными вернётесь, когда упрётесь в тему на работе.
  • Идите регулярно, а не рывками. Час в день лучше восьми часов в воскресенье.
  • Возвращайтесь к пройденному. Архитектура заиграет иначе после того, как вы увидите, как устроены данные.

Коротко

  • Программа «Backend · Python»: 418 статей, 30 фаз, блоки идут по порядку, и каждая фаза опирается на предыдущие.
  • После фазы тест с порогом 80% и неограниченными попытками; тренажёры дают практику, ИИ-ментор и куратор отвечают по ходу.
  • Демо-пример живёт на GitHub: marketplace-system-python, пять команд от клона до первого задания, ветки step-NN-* с красными тестами и -solution с эталоном.
  • Полный путь при часе в день — 9 месяцев, обязательный скелет — 4 месяца.
  • Доходят те, кто практикуется по ходу, не гонится за полнотой и идёт регулярно.

Что почитать дальше