Вопросы на собеседовании Go-разработчика
1 307 вопросов с реальных собеседований, чаще всего — в компаниях Wildberries, Ozon и VK.
Все вопросы
- Как устроена автоматизация и используются ли линтерыMiddleVK
- Как обеспечить идемпотентность APISeniorsferaplatform.ru
- Как работают параллельные транзакции с одной строкой при уровне изоляции SERIALIZABLESeniorLamoda
- Зачем нужны тайм-ауты между сервисамиSeniorAvito
- Что такое пагинация?JuniorInDrive
- Какие гарантии порядка записи в счетчик из нескольких goroutine?SeniorInDrive
- Как реализовать выдачу книги одному читателю с учетом уникальности и предотвращения конфликтовSeniorOzon
- Какие джойны и группировки используются для подсчета количества людей по адресамMiddleWildberries
- Напиши SQL запрос для выбора всех чатов пользователя с именем ВасяMiddleOzon
- Какие есть варианты кэширования на уровне приложения?SeniorСбер
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Что делать, если после добавления индекса селективность низкая и запрос остается медленным?SeniorInDrive
- Что делать при утечке памяти в сервисе, если сервис упадет через короткое времяMiddleVK
- Почему нужно проверять длину сжатой строки перед возвратом результатаSeniorVK
- Что такое WebSocket и как он работаетJuniorWildberries
- Что такое инлайнинг функцийJuniorWildberries
- Как вести себя, если коллега предлагает решение, которое, по твоему мнению, не сработаетMiddlesferaplatform.ru
- Была ли важна атомарность изменений в хранилище и отправки сообщенийSeniorBetBoom
- Что такое гонка данных и в каких системах она возникаетJuniorМоторика
- Что такое кодировки текста, например UTF-8 и UTF-16JuniorOrion_soft
- Для чего используется MongoDBSeniorKalabi
Как проходит собеседование
Собеседование на Go-разработчика обычно включает разговор с рекрутером, техническое интервью с задачей на код и финальную встречу с командой. Иногда отдельной секцией идёт проектирование сервиса. Многие приходят в Go из других языков, поэтому часто просят сравнить подходы: чем горутины отличаются от потоков и почему в Go нет привычных исключений.
Больше всего вопросов про конкурентность: горутины и планировщик, каналы, select, мьютексы, контекст и отмена операций, утечки горутин. Почти обязательно спрашивают про устройство слайсов и map, интерфейсы и их нулевые значения, обработку ошибок. Для бэкенд-ролей добавляются базы данных, кэширование и очереди, а ещё то, как ты профилируешь сервис и ищешь узкие места. На задаче на код смотрят не только на результат, но и на то, как ты рассуждаешь вслух.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование Go-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.