Вопросы на собеседовании Go-разработчика
1 307 вопросов с реальных собеседований, чаще всего — в компаниях Wildberries, Ozon и VK.
Все вопросы
Нашлось 69 вопросов
- Как правильно читать значения из канала и выйти по закрытию канала в Go?Senior×9Wildberries, Black Wall Group (BWG)
- Где в памяти живут глобальные переменные в Go?Middle×4InDrive, Т-Банк
- Как работает garbage collector в GoSenior×4amoCRM, Т-Банк
- Как работа garbage collector влияет на выполнение программыSenior×4InDrive, Т-Банк
- Как написать функцию в Go, которая меняет порядок чисел в слайсе на противоположный in-place без выделения нового массиваMiddle×4Employcity, Т-Банк
- Какие примитивы синхронизации из пакета sync в Go вы используете и зачемSenior×4Wildberries, Т-Банк
- Как использовать EXPLAIN и ANALYZE для оптимизации SQL запросовSenior×4Ютека, Т-Банк
- Что происходит с goroutine при блокирующем системном вызове?Senior×4InDrive, Т-Банк
- Как используется WaitGroup для ожидания завершения горутин в GoSenior×4Моторика, Т-Банк
- Как правильно организовать обработку задачи, вызываемой из нескольких мест в Go?Senior×4CloudRu, Т-Банк
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Как передаются слайсы и мапы в Go: копируются ли они или передаются по указателю?Senior×4ЦУМ, Т-Банк
- Что такое escape-анализ в Go и как он определяет размещение переменныхJunior×4Wildberries, Т-Банк
- В чем различия между стеком и хипом в GoSenior×2Т-Банк
- Почему нельзя заменить канал в Go обычным слайсом сообщений?MiddleТ-Банк
- Что такое runtime в Go и зачем он нуженJuniorТ-Банк
- Почему в Go нет гарантии порядка выполнения горутинSeniorТ-Банк
- Как устроена автоматизация тестов и интеграционное тестированиеSeniorТ-Банк
- Что происходит с памятью при передаче параметров и возврате значений в функциях Go?SeniorТ-Банк
- Как происходит выделение памяти для переменных в функции double в GoSeniorТ-Банк
- Почему важно отменять запросы в GoSeniorТ-Банк
Как проходит собеседование
Собеседование на Go-разработчика обычно включает разговор с рекрутером, техническое интервью с задачей на код и финальную встречу с командой. Иногда отдельной секцией идёт проектирование сервиса. Многие приходят в Go из других языков, поэтому часто просят сравнить подходы: чем горутины отличаются от потоков и почему в Go нет привычных исключений.
Больше всего вопросов про конкурентность: горутины и планировщик, каналы, select, мьютексы, контекст и отмена операций, утечки горутин. Почти обязательно спрашивают про устройство слайсов и map, интерфейсы и их нулевые значения, обработку ошибок. Для бэкенд-ролей добавляются базы данных, кэширование и очереди, а ещё то, как ты профилируешь сервис и ищешь узкие места. На задаче на код смотрят не только на результат, но и на то, как ты рассуждаешь вслух.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование Go-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.