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

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

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

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

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

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

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

Каталог

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

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

Какие паттерны параллельного программирования знаешь? Приведи пример семафора из стандартной библиотеки/практики Go и объясни, как канал может использоваться как семафор (захват и освобождение).

Основные паттерны — worker pool, pipeline, fan-out/fan-in, producer-consumer и семафор. В Go буферизованный канал можно использовать как счётчик занятых слотов.

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

Как устроен возврат ошибок в Go, какую утилитарную пользу даёт возврат `error` вместо исключений и добавил бы ты `try-catch` в Go?

Go обычно возвращает error отдельным значением, делая неуспех частью сигнатуры. Это упрощает локальную обработку, но требует дисциплины и добавляет повторяющиеся проверки.

Читать ответ
Поведенческий

Расскажи про свой практический опыт использования каналов в Go — как применял их на практике?

Приведите реальный пример канала: очередь задач, сбор результатов, сигнал завершения или передача прогресса. Объясните владение и отмену.

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

Каково значение Принципа Инверсии Зависимостей в Go и как его можно эффективно реализовать?

Инверсия зависимостей означает, что бизнес-логика зависит от нужного ей контракта, а не от конкретной БД или HTTP-клиента. В Go это удобно выражать небольшими интерфейсами.

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

Пользователь запустил копирование в горутине. Какие средства Go используются для обмена данными?

Для передачи прогресса и результата между горутинами подходят каналы; для отмены — context, для ожидания — WaitGroup, для общего состояния — mutex или атомики.

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

В Go объясните, как механизмы блокировки могут использоваться в параллельных программах для защиты общего состояния и предотвращения условий гонки, когда несколько горутин обращаются к одним и тем же данным. Опишите роль блокировок в координации доступа, типы проблем, которые они предназначены избегать, и практические соображения или компромиссы, связанные с их использованием в реальных приложениях.

Mutex защищает общий инвариант: все конкурирующие обращения должны соблюдать один протокол блокировки. RWMutex разделяет читателей и писателей, но не устраняет необходимость дисциплины.

Читать ответ