System Design
Методика структурированного ответа и типовые высоконагруженные системы.
Результат модуля
После модуля вы можете объяснить ключевые понятия, выбрать подход под условия задачи и показать это на коде, запросе или архитектурной схеме.
Темы
- Требования, масштабы, RPS, storage, SLO и rough capacity estimates.
- DNS/CDN/LB/API gateway, stateless instances, DB/cache/broker/object storage/search.
- Replication, sharding, consistent hashing, hot partitions, read/write split, multi-region.
- Correctness, availability, consistency, operability, security и cost как критерии решения.
- Типовые задачи: URL shortener, rate limiter, notification, feed, chat, booking, upload, scheduler.
Минимум для E4
- Знать определения без заученных «магических» формулировок.
- Объяснять ограничения каждого подхода и называть минимум одну альтернативу.
- Приводить практический пример: код, схема, запрос или production-сценарий.
- Учитывать ошибки, наблюдаемость и безопасный rollout там, где это применимо.
Углубление для E5/Senior
- Оценивать масштаб, стоимость, эксплуатационные риски и совместимость изменений.
- Проектировать постепенную эволюцию решения, а не только целевую схему.
- Защищать решение через требования и измеримые trade-offs.
Типовые вопросы
- Какие вопросы нужно задать до рисования архитектуры?
- Подготовьте ответ с примером из production или практики.
- Какую консистентность видит пользователь после записи?
- Подготовьте ответ с примером из production или практики.
- Где будет самый вероятный bottleneck и как его наблюдать?
- Подготовьте ответ с примером из production или практики.
Практика
- За 45 минут спроектируйте notification service: API, схема данных, queue, retries, rate limits, SLO и failure modes.
- Сформулируйте три частые ошибки по модулю и признаки их проявления.
- Добавьте в личные карточки определения и решения, которые не удалось воспроизвести без подсказки.
Связанные темы
Главная · Go · PostgreSQL · System Design · Интервью-практика
Источники
- Официальная документация используемого языка, БД или платформы.
- Production-документация команды и проверенные технические разборы.
- Конкретные ссылки добавляйте при наполнении темы, вместе с датой проверки актуальности.