Мок-собеседование на Middle Go-разработчика: системный дизайн видеоплатформы
Публичное мок-собеседование на Middle Go-разработчика: кандидат проектирует видеоплатформу, обсуждая загрузку и транскодирование видео, HLS/DASH, хранилища, авторизацию и масштабирование; в конце интервьюер даёт оценку.
- Опубликовано на YouTube:
- Просмотры на YouTube: 2,3 тыс.
- Лайки на YouTube: 30
Коротко о видео
Публичная учебная имитация system design-секции для Middle Go-разработчика. Кандидат, который сам называет себя Junior+, проектирует видеоплатформу наподобие YouTube под руководством лида из Fivegiven. Обсуждаются хранение оригиналов и обработанных версий, транскодирование, адаптивный стриминг через HLS/DASH, выбор хранилищ, а также access/refresh-токены и внешняя авторизация. Интервьюер исправляет неточности в рассуждениях о UDP, сроках жизни токенов и выборе БД, а в финале отмечает сильную коммуникацию, но недостаток опыта в системном дизайне и видеопротоколах; для своей команды он условно оценил бы кандидата как Junior+.
Затронутые темы
Что взять на заметку
- Начинайте system design с функциональных и нефункциональных требований, включая ожидаемую нагрузку и задержки.
- Для видеоплатформы отдельно проектируйте хранение оригиналов, транскодирование в варианты качества и сегментную доставку через HLS или DASH.
- Ресурсоёмкое транскодирование стоит выполнять асинхронно: очередь и сохраняемое состояние задания снижают риск потери работы.
- Выбирайте SQL или NoSQL по паттернам доступа, требованиям к консистентности и масштабированию, а не по общему правилу.
- Access-токен обычно должен быть короткоживущим, а refresh-токен — более долгоживущим; для обоих нужны продуманные отзыв и защита.