Подготовка к интервью

Вопросы на собеседовании по Golang

866 вопросов по Golang с технических собеседований

866 вопросов 1634 компании 353 технологии

Что проверяют на интервью

Как устроена подборка

На странице собраны вопросы по Golang — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: go, backend, concurrency.

Каталог

Результаты поиска

Найдено: 866
Теория

Как в Go реализуется полиморфизм без классического наследования (duck typing)? Это полиморфизм времени компиляции или времени исполнения? Какой ещё вид полиморфизма можно реализовать в Go?

Go поддерживает полиморфизм через неявную реализацию интерфейсов: тип подходит по набору методов. Соответствие проверяется статически, а вызов через интерфейс обычно выбирает реализацию в runtime.

Читать ответ
Теория

Почему в Go используются две области памяти — стек и куча, а не только одна из них?

Стек эффективен для значений с понятным временем жизни вызова, куча — для объектов, которые живут дольше или разделяются между частями программы. Их сочетание упрощает управление памятью.

Читать ответ
Теория

Каковы потенциальные ловушки использования общего состояния в параллельном программировании, и как их можно избежать в Go?

Общее изменяемое состояние создаёт гонки, потерянные обновления, deadlock и сложные инварианты. Уменьшайте совместное владение и явно задавайте синхронизацию.

Читать ответ
Теория

Расскажи про map в Go.

Map в Go — отображение уникальных сравнимых ключей в значения. Чтение отсутствующего ключа возвращает нулевое значение; форма value, ok отличает его от существующего.

Читать ответ
Лайвкодинг

Напиши Singleton на Go с использованием sync.Once, затем усложни: GetLogger принимает name и age, возвращает один экземпляр для одинаковых параметров

Для одного экземпляра достаточно sync.Once. Экземпляр на каждую пару name и age — уже multiton: кеш по составному ключу, защищённый mutex.

Читать ответ
Лайвкодинг

func (p *Pool) Stop() {

В коде есть опасный Unlock без показанного Lock, повторное закрытие канала и гонка с отправителями. Cancel не прерывает произвольную задачу немедленно.

Читать ответ