Вернуться в видеотеку

Мок-интервью Go-разработчика: goroutine и concurrency

Мок-собеседование Go-разработчика уровня Middle/Senior: goroutine и планировщик Go, синхронизация, context, PostgreSQL, Kafka и микросервисы.

Источник: it father.

Открыть на YouTube

Таймлайн

Коротко о видео

Это мок-собеседование на Go-разработчика уровня Middle/Senior. Интервьюер начинает с goroutine, различия concurrency и параллелизма, а также I/O- и CPU-bound задач, затем спрашивает об указателях, GMP-модели, netpoller, сокетах, IPC, каналах, select и worker pool. Далее кандидат отвечает на вопросы о context, сборщике мусора, RWLock, sync.Map, инструментах и тестировании. В заключении обсуждаются индексы и материализованные представления PostgreSQL, consumer groups в Kafka и компромиссы микросервисов.

Затронутые темы

Что взять на заметку

  • Объяснять goroutine через планировщик Go и различать concurrency с фактическим параллелизмом.
  • Выбирать каналы, мьютексы, worker pool и семафоры исходя из модели обмена данными и ограничений конкурентности.
  • Для context использовать отмену и дедлайны, а через context.Value передавать только request-scoped метаданные, не бизнес-данные.
  • При работе с PostgreSQL учитывать блокировки при создании индексов и помнить, что материализованные представления требуют явного обновления.

Рекомендуем посмотреть

31:04
BackendSenior

Go: техническое собеседование Senior-разработчика

Запись технического собеседования на позицию Senior Go-разработчика. Интервьюер проверяет знание типов данных Go, строк, слайсов, map и интерфейсов, затем обсуждает горутины, context и синхронизацию, REST и аутентификацию, а также индексы PostgreSQL и задачу очистки большой таблицы.

1:21:11
BackendMiddle

Мок-собеседование на Middle Java-разработчика

Мок-собеседование по Java для уровня Middle: кандидатка отвечает на вопросы о Java Core, многопоточности, Spring, SQL и микросервисах, а ведущий уточняет и разбирает ответы. В кейсах обсуждаются производительность запросов, ограничение нагрузки, идемпотентность и Kafka.