Эта глава темы 1 фокусируется на адаптации проектирования под backend, mobile, frontend, data и ml.
В реальной работе материал помогает проектировать процесс подготовки и карьерных решений: выбирать приоритеты, структурировать сигналы и управлять риском неверной ставки на случайные практики.
Для system design interview глава полезна тем, что дает рабочий язык аргументации: как показывать инженерную зрелость, объяснять компромиссы и защищать решения под ограничением времени.
Практическая польза главы
Доменные режимы
Разделяйте, как меняются ограничения для backend, mobile, frontend, data и ml систем.
Фокус NFR
Сдвигайте акценты NFR по типу системы: latency, freshness, battery, privacy, throughput.
Границы владения
Уточняйте ownership API, данных и инфраструктуры, чтобы решения были исполнимы в реальной команде.
Cross-domain articulation
На интервью объясняйте, как один и тот же подход адаптируется под разные домены без шаблонности.
System Design интервью не ограничиваются классическим backend-проектированием. В зависимости от роли и специализации, компании проводят специализированные секции для frontend, mobile, data и ML инженеров. Каждый тип имеет свой фокус, паттерны и критерии оценки.
Распространённость разных типов интервью
Примерные оценки того, насколько популярны разные виды system design интервью
Фундамент
HTTP протокол
Базовый протокол для большинства backend-сервисов и API.
Backend System Design
Классический System Design
Фокус на распределённых системах, масштабируемости и надёжности серверной инфраструктуры. Это «золотой стандарт» system design интервью.
Ключевые компоненты
- Load Balancers
- SQL/NoSQL databases
- Caches (Redis, Memcached)
- Message Queues (Kafka, SQS)
- CDN, API Gateway
Типичные задачи
Фокус оценки
Scalability, Availability, Consistency tradeoffs
NFR
Latency, Throughput, Fault Tolerance
Deep Dive
Sharding, Replication, CAP theorem
Frontend System Design
Архитектура клиентских приложений
Фокус на клиентской экосистеме: компонентная архитектура, управление состоянием, производительность рендеринга и UX. Используется фреймворк RADIO.
RADIO Framework
Ключевые темы
- Component Architecture & Modularity
- State Management (Redux, Context, Zustand)
- SSR vs CSR vs SSG с Hydration
- Performance: LCP, FID, CLS
- Code Splitting & Lazy Loading
Типичные задачи
Оптимизации
Virtualization (windowing), Progressive Image Loading, Debouncing, Bundle optimization
Отличия от Backend
Меньше фокуса на DB/infra, больше на UX, accessibility, browser APIs
Фундамент
Android: мобильная ОС
Архитектура и ограничения мобильной ОС для проектирования приложений.
Mobile System Design
iOS / Android архитектура
Центральные темы: работа в условиях нестабильной сети, ограничения по батарее и памяти, offline-first подход и синхронизация данных.
Offline-First
Локальная БД как source of truth. Room/CoreData + Repository pattern
Battery & Memory
App Thinning, Image optimization, Background task management
Sync Strategies
Push Notifications, WebSockets, SSE, Conflict resolution
Архитектурные паттерны
Типичные задачи
Уникальные аспекты Mobile SD
Data Engineering System Design
Data Pipelines & Infrastructure
Фокус на жизненном цикле данных: от источников через обработку к хранению и потреблению. Batch vs Streaming, ETL vs ELT, Data Lakes vs Warehouses.
Data Journey — 6 слоёв
Sources
Processing
Storage
ML/AI
Consumers
Ключевые концепции
Spark/Airflow vs Kafka/Flink
Schema-on-write vs Schema-on-read
Debezium, real-time sync
Medallion Architecture
Immutable, append-only
Deduplicated, validated
Aggregated, ready for BI
Технологии
Типичные задачи
ML System Design
MLOps & Model Serving
ML System Design объединяет классический backend с ML-специфичными компонентами: training pipelines, feature stores, model serving и мониторинг drift.
ML Pipeline Architecture
Data Ingestion
Feature Store
Training
Model Registry
Serving
Feature Store
Централизованное хранилище features для training и inference. Решает проблему Training-Serving Skew.
Для batch training
Для real-time inference
Model Serving
Deployment Strategies
- Canary Rollout
- A/B Testing
- Shadow Deployment
- Blue-Green
Monitoring
- Data Drift detection
- Model Performance (P/R/AUC)
- Latency & Throughput
- Feature distribution
Типичные задачи
Ключевой вопрос на ML SD интервью
«Как вы обеспечите консистентность между features, используемыми при training и inference?» → Feature Store с версионированием и lineage tracking.
Сравнительная таблица
| Аспект | Backend | Frontend | Mobile | Data | ML |
|---|---|---|---|---|---|
| Главный фокус | Scalability | UX & Performance | Offline & Battery | Data Flow | Model Lifecycle |
| NFR приоритет | Latency, Throughput | LCP, FID, CLS | Battery, Memory | Freshness, Accuracy | Accuracy, Latency |
| State | DB, Cache | Redux, Context | Local DB + Sync | Warehouse/Lake | Feature Store |
| Фреймворк | Alex Xu 4-step | RADIO | MVVM + Repository | 6-layer Data Journey | ML Pipeline |
| Типичная длит. | 45-60 мин | 45 мин | 45 мин | 45-60 мин | 45-60 мин |
Ключевые выводы
Backend SD — универсальный стандарт, но не единственный формат. Готовьтесь к специализированным секциям.
Frontend SD фокусируется на клиентской архитектуре, state management и web performance metrics.
Mobile SD — offline-first, sync strategies, и ограничения устройств (батарея, память, сеть).
Data SD — batch vs streaming, ETL pipelines, и Medallion architecture для data lakes.
ML SD — Feature Stores, training-serving skew, model registry и мониторинг drift.
Уточняйте формат — перед интервью спросите рекрутера, какой тип system design ожидается для вашей роли.
Связанные главы
- Как устроена часть про подходы к проектированию систем - даёт верхнеуровневую карту раздела и помогает выбрать релевантный тип системы под цель интервью.
- Обсуждение фреймворков для проведения/прохождения system design interview - показывает базовый каркас интервью и помогает связать его со специализированными треками.
- Подходы к проведению интервью по проектированию - раскладывает подготовку по шагам и подсказывает, как адаптировать стратегию под backend/frontend/mobile/data/ml.
- Зачем нужен Frontend Architecture и как он влияет на System Design - углубляет frontend-трек: RADIO, производительность рендера, state management и границы клиентской архитектуры.
- Android: мобильная ОС - добавляет платформенный контекст mobile-трека: lifecycle, ограничения runtime, сеть и ресурсы устройства.
- Database Selection Framework - помогает в data/backend секциях аргументированно выбирать хранилища с учётом нагрузки и trade-offs.
- Machine Learning System Design Interview (short summary) - перекладывает общий подход на ML-задачи: feature pipelines, online/offline serving и операционные риски.
- Observability & Monitoring Design - дополняет любой трек практикой метрик, логов и алертинга для эксплуатационной зрелости решений.
