Открытое собеседование на Middle Go-разработчика
Тимлид проводит открытое техническое интервью с Go-разработчиком: обсуждает конкурентность, планировщик горутин и выбор синхронизации. Во второй части кандидат вместе с интервьюером разбирает практическую задачу.
- Опубликовано на YouTube:
- Просмотры на YouTube: 1,7 тыс.
- Лайки на YouTube: 32
Коротко о видео
Это запись открытого технического собеседования на уровень Middle Go. После знакомства интервьюер переходит к вопросам о конкурентности: кандидат объясняет блокировки, сравнивает варианты мьютексов для одной пишущей и нескольких читающих горутин. Далее обсуждают планировщик Go, локальные и глобальную очереди, а также work stealing. В практической части собеседующие проектируют и дорабатывают код с воркерами, каналами и HTTP-сервером; интервьюер задаёт уточняющие вопросы о типах, интерфейсах и завершении программы. В финале участники отвечают на вопросы зрителей о критериях практического задания и о системном дизайне на senior-уровне.
Затронутые темы
Что взять на заметку
- Для сценария с одним писателем и многими читателями нужно обосновать выбор синхронизации.
- При объяснении планировщика Go полезно назвать локальные очереди, глобальную очередь и work stealing.
- В задаче с пулом воркеров нужно продумать очередь задач, ограничение параллелизма, изоляцию ошибок и остановку воркеров.
- Практическое задание оценивают не только по коду, но и по аргументации решений.
- На senior-уровне к коду добавляются вопросы системного дизайна и расчёта нагрузки.