Вопросы на собеседовании Go-разработчика
1 307 вопросов с реальных собеседований, чаще всего — в компаниях Wildberries, Ozon и VK.
Все вопросы
Нашлось 167 вопросов
- Зачем использовать горутины вместо потоков в GoSeniorOzon
- Какие виды блокировок существуют в PostgreSQL и как их использовать для решения проблем с конкурентным доступом?SeniorOzon
- Что такое MVCC в PostgreSQLJuniorOzon
- Что такое capacity слайса в Go и для чего используетсяJuniorOzon
- Какие проблемы могут возникнуть при реализации горутины, которая читает из таблицы outbox и пишет в KafkaSeniorOzon
- Что происходит при попытке закрыть nil канал в GoMiddleOzon
- Что такое b-tree индекс и что означает буква BJuniorOzon
- Хорошие практики написания кода для автотестовSeniorOzon
- Как устроены алертыSeniorOzon
- Спроектируй базу данных для электронной библиотеки с таблицами авторов, книг и читателей, опиши связи, индексы и ограниченияSeniorOzon
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Какие виды индексов существуютSeniorOzon
- Какие стратегии масштабирования кэша существуютSeniorOzon
- Пример использования FOR UPDATE в PostgreSQLSeniorOzon
- Как написать запрос, который выберет названия всех книг с более чем тремя авторамиSeniorOzon
- Как описать схему базы данных для модели библиотеки с сущностями автор, книга, читатель и связями между нимиSeniorOzon
- С какими протоколами передачи данных вы работалиSeniorOzon
- Зачем создавать отдельный сервис воркер для аналитики вместо обработки в ордер сервисеSeniorOzon
- Как клиенты на разных языках используют протокол gRPCSeniorOzon
- Для чего нужны два экстра бита внутри бакета map Go и как они используютсяSeniorOzon
- Какие алгоритмы балансировки подходят для распределенных систем без синхронизацииSeniorOzon
Как проходит собеседование
Собеседование на Go-разработчика обычно включает разговор с рекрутером, техническое интервью с задачей на код и финальную встречу с командой. Иногда отдельной секцией идёт проектирование сервиса. Многие приходят в Go из других языков, поэтому часто просят сравнить подходы: чем горутины отличаются от потоков и почему в Go нет привычных исключений.
Больше всего вопросов про конкурентность: горутины и планировщик, каналы, select, мьютексы, контекст и отмена операций, утечки горутин. Почти обязательно спрашивают про устройство слайсов и map, интерфейсы и их нулевые значения, обработку ошибок. Для бэкенд-ролей добавляются базы данных, кэширование и очереди, а ещё то, как ты профилируешь сервис и ищешь узкие места. На задаче на код смотрят не только на результат, но и на то, как ты рассуждаешь вслух.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование Go-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.