Architect Study Plan
Программа прокачки системного аналитика до архитектора решений. В каждом модуле — урок на 15–20 минут чтения, практика на своём материале и вопросы в формате собеседования. Два подготовительных этапа закрывают базу, одиннадцать блоков основной программы ведут от того, как устроены интеграции и PostgreSQL «под капотом», через микросервисы, System Design и ИИ-системы — к архитектурной практике и роли архитектора.
Цель не «знать определения», а уметь объяснить механизм и обосновать выбор: почему здесь Saga, а не распределённая транзакция; почему планировщик не взял индекс; почему gateway и балансировщик — разные компоненты. Именно это спрашивают на собеседованиях уровня senior и именно это отличает сильную постановку от слабой.
С чего начать
| Кто вы | Откуда начинать |
|---|---|
| Бизнес-аналитик, который переходит в системный анализ, или junior | Этап 0А. Техническая база — с первого модуля |
| Системный аналитик уровня middle | Входной тест этапа 0Б: что знаете уверенно — пропускаете, остальное проходите |
| Senior-аналитик, готовитесь к архитектору | Сразу этап 1. Раздел «Готовность к модулю» в начале каждого модуля подскажет, если нужно вернуться к базе |
Входные тесты есть у обоих подготовительных этапов. В каждом модуле есть раздел «Готовность к модулю»: на какие темы он опирается, со ссылками. Если тема оттуда незнакома — сначала она.
Хотите пройти программу у себя со своим прогрессом — сделайте свою копию.
Дорожная карта
Четыре этапа по 4–6 часов в неделю. Подготовка: 0А (10 недель) и 0Б (9 недель) — проходятся по необходимости. Основная программа: этап 1 (12 недель) — фундамент: PostgreSQL, интеграции, микросервисы и итоговый проект; этап 2 (19 недель) — всё, что спрашивают у архитектора сверх фундамента.
flowchart TD
subgraph P0["Подготовка"]
A["Этап 0А: Техническая база"] --> B["Этап 0Б: Мост к архитектуре"]
end
subgraph P1["Этап 1 · недели 1–12"]
B2["Блок 2: PostgreSQL"] --> B3["Блок 3: Микросервисы и DDD"]
B1["Блок 1: HTTP и безопасность"] -.-> B3
B3 --> C["Итоговый проект"]
end
subgraph P2["Этап 2 · недели 13–31"]
B7["Блок 7: System Design"] --> B5["Блок 5: ИИ-системы"]
B6["Блок 6: Архитектурная практика"] -.-> B11["Блок 11: Роль архитектора"]
B5 --> B8["Блок 8: Интеграции"]
B8 --> B9["Блок 9: Данные"]
B9 --> B10["Блок 10: Инфраструктура"]
end
B --> B2
B --> B1
C --> B7
Как подготовка связана с основной программой — модуль за модулем:
| Подготовка | Готовит к модулям |
|---|---|
| А.1 Как устроено приложение | 3.1 |
| А.2 Как работает веб | 1.1, 1.3 |
| А.3 Данные и форматы | 5.1, 8.4, 8.6 |
| А.4 Реляционные БД | 2.1, 9.2 |
| А.5 SQL для аналитика | 2.4, 9.1 |
| А.6 API и интеграции | 3.4, 8.4 |
| А.7 UML и BPMN | 6.3 |
| А.8 Процесс разработки | 2.6, 10.2, 11.3 |
| А.9 Системные требования | 3.2, 5.7, 6.1, 11.1 |
| Б.1 Сеть для интеграций | 1.1, 3.3 |
| Б.2 Основы безопасности | 1.2, 1.4, 1.5, 5.5 |
| Б.3 Контракты API | 1.3, 5.3, 8.2, 8.3 |
| Б.4 SQL и транзакции | 2.1, 2.2, 2.3, 2.4, 2.5, 5.2 |
| Б.5 Асинхронный обмен | 3.4, 3.5, 7.5, 8.1, 8.5, 9.3 |
| Б.6 Архитектура приложения | 3.1, 3.3, 3.7, 5.6, 7.1, 7.2, 7.3, 7.5, 10.1, 10.3 |
| Б.7 Описание решения | итоговый проект, 6.1, 6.2, 6.3 |
| Б.8 Распределённые системы | 3.5, 3.6, 3.7, 7.1, 7.4, 10.4 |
Основной трек — одна тема в неделю; параллельный — по часу в неделю, небольшими порциями.
Этап 0А. Техническая база
Этап 0Б. Мост к архитектуре
Этап 1. Фундамент
Этап 2. Архитектор
Блоки 8–10 плотнее по графику: многое там знакомо по практике, и задача — систематизировать, а не учить с нуля. Если тема идёт тяжело — растягивайте, график ориентировочный.
Как устроен каждый модуль
- Зачем это аналитику — где тема всплывает в постановках, интеграциях и на собеседовании.
- Готовность к модулю — на какие модули он опирается. В подготовительных модулях есть и обратная связь — Куда ведёт: где тема раскрывается дальше.
- Что понять — механизмы, которые нужно усвоить; работает как чек-лист.
- Урок — основной текст: механизмы, примеры, схемы, типичные ошибки, как говорить об этом на собеседовании.
- Читать дальше — книги, документация и главы system-design.space для углубления. Необязательно.
- Практика — руками, на своём материале и стенде (никогда не на базе или стенде заказчика).
- Вопросы для самопроверки — в формате собеседования. Модуль закрыт, когда на каждый вопрос можешь ответить вслух за 2–3 минуты, с примером и без подглядывания.
- Заметки — свои формулировки, ошибки, находки. Самое ценное в репозитории.
Отслеживание прогресса
- Каждый модуль — отдельный issue, каждый блок и этап — milestone. Общая картина — на странице Прогресс: полоски по блокам и статус каждого модуля. В начале каждого модуля тоже есть плашка со статусом и ссылкой на его issue.
- Внутри issue — раздел «Готовность»: на какие модули опирается этот, и чек-лист «проверил готовность / прочитал урок / сделал практику / ответил на вопросы / записал заметки». Issue закрывается, когда отмечены все пункты.
- Заметки коммитятся прямо в файл модуля, в раздел «Заметки». Коммит со ссылкой
Closes #Nзакрывает issue автоматически. - Issues, milestones и метки создаёт GitHub Actions — workflow «Синхронизировать issues» по данным из
scripts/modules.json. Он запускается сам, когда меняется этот файл, и вручную на вкладке Actions. Существующие issues находятся по пути к файлу модуля, отмеченные галочки сохраняются.
Этапы и блоки
- HTTP, REST и безопасность интеграций
- PostgreSQL изнутри
- Микросервисы, DDD и устойчивость
- Итоговый проект
- ИИ в архитектуре систем
- Архитектурная практика и документирование
- System Design для собеседований
- Интеграционные паттерны за пределами REST
- Данные и аналитические системы
- Инфраструктура и поставка
- Архитектор как роль
Правило репозитория
Репозиторий публичный. Никаких названий заказчиков, внутренних систем, схем, логов и данных с реальных проектов — только обезличенные учебные примеры. Тексты уроков оригинальные: материалы других авторов только упоминаются в разделах «Читать дальше».
Как сделана программа
Структуру программы, связи между модулями, требования к урокам и примеры из предметных областей задавал автор. Тексты уроков написаны с помощью Claude (Anthropic): уроки параллельно готовили несколько агентов, а факты в них проверяли отдельные агенты по документации и первоисточникам. Если найдёте ошибку, заведите issue или поправьте файл через «Редактировать на GitHub».