Подготовка к секции системного дизайна (Yandex Codenv, этап 2)
Этап 1 (алгоритмы) пройден → назначена архитектурная секция: крупноблочная схема сервиса (инстаграм/твиттер), отказоустойчивость. Слоты: пт 18.09 15:30 / пн 21.09 15:00 / вт 22.09 18:00–19:00 (какой возьмём — решает пользователь). Трек задач: TASK-45 (+ сабтаски 45.1–45.10).
Состав папки
| Файл | Что это | Задача |
|---|---|---|
knowledge-base.md |
База знаний: числа (степени двойки, latency), back-of-envelope с примерами, классы хранилищ, кэш, репликация, шардирование, консистентность, очереди, отказоустойчивость, эксплуатация, шпаргалка «что назвать на секции», карта DDIA | TASK-45.1 ✅ |
methodology.md |
Методичка: 6 этапов секции с таймингом, фреймворк ответа по этапам, чек-лист речевых паттернов, топ-10 ошибок, план подготовки под слоты (А/Б/В), протокол само-тренировки (эталоны → каты §6.5 → моки §6.3–6.4) | TASK-45.2 ✅ |
classic-designs.md |
Эталонные разборы по 6 этапам: URL shortener (эталон Яндекса из статьи), лента новостей (Instagram/Twitter), мессенджер, медиа-хостинг | TASK-45.3 ✅ |
brief.md |
Бриф: 12 разделов знаний с критериями «умею, если» и источниками — основа серии учебных статей | составлен при постановке 45.40–45.52 |
articles/ |
Учебные статьи верхнего уровня: обзорная 00 + по разделу брифа 01–12 (10–20 мин каждая) |
TASK-45.40 ✅ (обзор articles/00-overview.md), 45.41 ✅ (articles/01-interview-framework.md — фреймворк и требования), 45.42 ✅ (articles/02-estimations.md — back-of-envelope, числа, латентность), 45.43 ✅ (articles/03-scaling.md — LB, CDN, stateless), 45.44 ✅ (articles/04-data-models-storage.md — модели данных и выбор хранилища), 45.45 ✅ (articles/05-replication-sharding.md — репликация и шардирование), 45.46 ✅ (articles/06-caching.md — кэширование), 45.47 ✅ (articles/07-queues-streams.md — очереди и потоки), 45.48 ✅ (articles/08-fault-tolerance.md — отказоустойчивость и надёжность), 45.49 ✅ (articles/09-consistency.md — согласованность и распределённые транзакции), 45.50 ✅ (articles/10-components-patterns.md — прикладные компоненты: API, rate limiter, snowflake, real-time транспорт, краулер, typeahead), 45.51 ✅ (articles/11-reference-designs.md — эталонные архитектуры: shortener, лента, мессенджер, медиа), 45.52 ✅ (articles/12-operations-observability.md — эксплуатация и наблюдаемость: golden signals, SLO/error budget, rolling/canary/blue-green, shadow traffic, expand/contract, metrics first) — серия 01–12 завершена |
training/ |
Логи раундов само-тренировки и mock-сессий (round-NN-<дата>/_round.md), правила и порог готовности |
по ходу |
materials/ |
Конспекты источников от HR: yandex-564132.md (45.5 ✅), sdp-appendix-numbers.md (45.6 ✅), sdp-guide.md (45.7 ✅), habr-516604.md (45.8 ✅), jackson-gabbard-ep06.md (45.9 ✅), ddia-map.md (45.10 ✅) + learn-system-design-index.md - индекс подборки learn-system-design с приоритетами под слоты (45.12 ✅; конспекты материалов - задачи 45.11-45.37, из них готово: lsd-karanpratapsingh-system-design.md - учебник с разборами shortener/WhatsApp/Twitter/Netflix/Uber и картой уникальных vs SDP тем, 45.13 ✅; lsd-bregman-notebook.md - пошаговые карточки + упражнения-эволюции AWS, карта уникальных тем для KB §9/§11/§13, 45.14 ✅; lsd-bytebytego-blog.md - индекс блога ByteByteGo (744 поста): топ-5 с выжимками - Instagram scaled (сквозной кейс), GCP outage (отказоустойчивость), FB Memcached (кэш: lease/gutter/mcsqueal), RabbitMQ vs Kafka vs Pulsar (очереди), шардирование + второй эшелон и платная серия, 45.16 ✅; lsd-bytebytego-youtube.md - топ-5 видео канала по расшифровкам субтитров, 45.17 ✅; lsd-newsletter.md - индекс рассылки System Design Newsletter (Neo Kim, 173 поста): топ-5 с выжимками - Hashnode Feed (лента), WhatsApp (чат), YouTube (медиа VOD), FB Live (медиа live + request coalescing), Hotstar 25M (отказоустойчивость пиковых событий) + второй эшелон по темам (URL BOE, WeChat, Slack, Quora sharding, Vitess, Stripe rate limiting и др.) и карта платного периода, 45.18 ✅; lsd-architecture-notes.md - индекс Architecture Notes (Mahdi Yusuf, 20 постов): топ-5 с выжимками - Redis Explained (топологии single/HA/Sentinel/Cluster, hashslot'ы, RDB/AOF, fork+COW), Database Sharding (альтернативы до шардирования, shard key, 3 стратегии, цена 2PC), RDBMS (B+tree, read phenomena × isolation levels), Load Balancers (алгоритмы, L4/L7, strangler), монолит/SOA/микросервисы + второй эшелон и платная серия; подписка не нужна, 45.19 ✅; lsd-awesome-scalability.md - индекс awesome-scalability (binhnguyennus, ~700 кейсов): топ-5 под бриф - Instagram Sharding & IDs (ID = время+шард+seq в PL/PGSQL, логические шарды-схемы), TAO (соцграф: 1 млрд чтений/с, leader+follower кэш, critical reads к master), Twitter/Redis (лента как структура на сервере, 105TB/39M QPS, tail latency при fan-out), Netflix Fault Tolerance (30×99.99%=2ч/мес, bulkhead-пулы, circuit breaker 50%/10s, лестница fallback'ов), Brewer (yield/harvest, DQ, n/(n-k), MTTR>MTBF) + второй эшелон, 45.30 ✅; lsd-interviewready-resources.md - индекс system-design-resources (InterviewReady, 183 ссылки/38 разделов - «внутренности»: engineering-блоги + академические первоисточники): топ-5 под бриф - The Log (Kreps: лог = время, state machine replication, лог+serving layer), Transactional Outbox (+Sagas: атомарность «запись+событие», идемпотентные консьюмеры), Uber CacheFront 40M RPS (кэш внутри движка БД: cache-aside, CDC-инвалидация, Lua-дедупликация по версии, negative caching, адаптивные таймауты, replicate keys между регионами), LSM-tree (write-heavy: батч в память, rolling merge, платим чтением; противовес B+tree), DNS/GSLB Page of Shame + Shopify (browser DNS cache не видит TTL → HA = мульти-A, «умный GSLB» не работает; TTL-трейдофф) + второй эшелон (DBLog, Gorilla, DB-as-queue, BigTable/Dynamo, horicky, OT, active-active) − 45.31 ✅; lsd-awesome-distributed-systems.md — индекс awesome-distributed-systems (theanalyst, 83 ссылки — канон DS: первоисточники, книги, курсы): топ-5 под бриф — Dynamo SOSP'07 (AP-рамка: always-writable корзина, SLA на p99.9 не медиане, (3,2,2), availability ≠ durability), Raft-сайт + The Secret Lives of Data (механика «упал мастер»: термины, выборы, кворум — 30 мин), Hodges «Young Bloods» (частичные отказы, backpressure, partial availability, «ты не Шерлок пока нет метрик», пространство ID), Hamilton LISA'07 (operations-friendly: 2500:1, отказы несколько раз в день на 10K серверов, «выключи любой сервер без дрейна», admission control на всех ярусах, soft delete, трекинг FT-механизмов 2000→400), Dapper (трассировка: trace tree, сэмплирование 1/1024, адаптивное, платформа не инструмент) + второй эшелон (Builders Library, 6.824, mixu, aphyr, Fallacies, Chubby) — 45.32 ✅) |
TASK-45.5–45.12 ✅, 45.13–45.32 ✅, 45.11, 45.33–45.37 ⏳ |
materials/alex-xu-vol1/ |
Алекс Сюй, «System Design. Подготовка к сложному интервью» (Vol. 1, рус. изд.): полный текст всех 16 глав + выжимки (ch-*.md) и карта переноса _map.md — куда что уехало в KB §2.5/§14, methodology (фреймворк гл. 3), classic-designs (сверки гл. 8/11/12/14) |
TASK-45.38 ✅ |
materials/ddia-2ed/ |
DDIA 2-е издание (Kleppmann & Riccomini, 2025, 673 стр.): полный текст всех 14 глав + выжимки (ch-*.md) и карта переноса _map.md — куда что уехало в KB §3.1/§5–§10/§15, classic-designs (сверка кейса лент гл. 2), ddia-map §0 (соответствие изданий). Приоритеты: гл. 6–10 — ядро, 1–5 — вторично, 11–13 — опционально, 14 — этика |
TASK-45.39 ✅ |
Порядок чтения
Полный план с таймингом — methodology.md §5 (три варианта под слоты: А «завтра» ~4 ч, Б «понедельник» ~8 ч, В «вторник» ~12 ч). Кратко:
- Статья Яндекса (habr 564132) — каркас секции + эталон URL shortener (60–75 мин)
methodology.md§1–4 — фреймворк, речевые паттерны, ошибки (20 мин)knowledge-base.md§1–2 — числа и back-of-envelope до автоматизма (45 мин)classic-designs.md§1 — сборка полного разбора URL shortener (30 мин)knowledge-base.md§3–11 — паттерны: хранилища, кэш, шардирование, консистентность, очереди, отказы (90 мин)- habr 516604 — взгляд проходца: чек-листы, психология (30 мин)
- Видео Gabbard — общий фреймворк и калибровка ожиданий (40 мин)
- DDIA — только по карте (KB §12), не подряд; перед секцией 18.09 не трогать
Приоритет тренировок: URL shortener → лента новостей → мессенджер → медиа-хостинг.
Материалы от HR
| # | Источник | Ссылка | Конспект |
|---|---|---|---|
| 1 | К. Кардаманов, «Как проходят архитектурные секции собеседования в Яндексе: практика дизайна распределённых систем» | habr 564132 | materials/yandex-564132.md ✅ |
| 2 | System Design Primer — Appendix (числа) | github | materials/sdp-appendix-numbers.md ✅ |
| 3 | System Design Primer — полный гайд | github | materials/sdp-guide.md ✅ |
| 4 | «Как я научился проходить архитектурные секции» | habr 516604 | materials/habr-516604.md ✅ |
| 5 | Jackson Gabbard — Intro to Architecture and Systems Design Interviews | youtube | materials/jackson-gabbard-ep06.md ✅ |
| 6 | DDIA, М. Клеппман («Высоконагруженные приложения») | dataintensive.net | materials/ddia-map.md ✅ + карта в knowledge-base.md §12 |
Связанные документы
../interview-materials.md— общая карта материалов по вакансии (этапы 1–2)../case.md— хронология и статус кейса../algo-exam/— этап 1 (алгоритмы, закрыт): протокол экзаменации, на котором построен протокол тренировок §6../algo-stage-prep.md— подготовка к этапу 1 (архив)