Вопросы с собеседований
Вопросы на собеседовании: Go
Go для джуна: срезы и мапы, интерфейсы, ошибки, горутины, каналы, context, память и тесты.
35вопросов
29Junior
6Middle
Основы языка
5- Как работает defer и в каком порядке выполняются отложенные вызовы?Junior
- Как в Go передаются аргументы и зачем нужны указатели?Junior
- Чем := отличается от var и что такое затенение переменных?Junior
- Чем Go отличается от других языков и почему его выбирают для бэкенда?Junior
- Что такое нулевые значения в Go?Junior
Срезы, мапы и строки
7- Почему изменение одного среза неожиданно меняет другой?Junior
- Чем массив отличается от среза в Go?Junior
- Чем make отличается от new в Go?Junior
- Как устроена map в Go и какие у неё особенности?Junior
- Чем nil-срез отличается от пустого и почему запись в nil-map вызывает panic?Junior
- Как устроен срез (slice) в Go?Junior
- Как в Go устроены строки, байты и руны?Junior
Методы и интерфейсы
6- Что такое any, type assertion и type switch?Junior
- Как работают интерфейсы в Go и что значит неявная реализация?Junior
- Как в Go обходятся без наследования — что такое встраивание (embedding)?Junior
- Когда метод должен иметь получатель-указатель, а когда — значение?Junior
- Как устроены дженерики в Go и когда их использовать?Middle
- Почему интерфейс с nil-указателем внутри не равен nil?Middle
Ошибки и panic
3Горутины и каналы
8- Чем буферизованный канал отличается от небуферизованного и что происходит при закрытии канала?Junior
- Зачем нужен context.Context?Junior
- Что такое горутина и чем она отличается от потока ОС?Junior
- Что изменилось с переменной цикла в Go 1.22?Junior
- Когда использовать каналы, а когда sync.Mutex и WaitGroup?Junior
- Что такое гонка данных в Go и как её найти?Junior
- Как работает select в Go?Junior
- Что такое утечка горутин и как её избежать?Middle
Память и GC
1Модули, тесты и инструменты
5- Как написать HTTP-сервис на стандартной библиотеке Go?Junior
- Как устроены модули Go — go.mod, go.sum, версии?Junior
- Как пишут тесты в Go — табличные тесты, моки, бенчмарки?Junior
- Как настроить таймауты и корректную остановку HTTP-сервера в Go?Middle
- Как найти, что тормозит или ест память в Go-сервисе, — pprof?Middle
Партнёр платформы
Разбор собеседования
Разбор собеседования с sotto
После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.