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

Банк вопросов с собеседований

Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.

23 вопроса 119 компаний 249 технологий

Усильте резюме перед собеседованием

Проверьте, насколько резюме подходит выбранной позиции, и получите рекомендации по улучшению.

Анализ резюме
Сбросить

Каталог

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

Найдено: 23
Поведенческий

В чём отличие буферизированного канала от небуферизированного и какой быстрее передаёт значение?

Чем отличаются буферизированный и небуферизированный каналы и какой из них быстрее передаёт данные? Каналы Go — средство синхронизации и обмена данными между goroutine Небуферизированный канал не хранит элементы:…

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

В чём разница между методами с value receiver и pointer receiver?

Разница между value receiver и pointer receiver При использовании value receiver метод получает копию значения структуры С pointer receiver метод получает указатель на исходную структуру Изменения внутри метода с…

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

Зачем нужен контекст в gRPC-запросах и что происходит после его отмены?

Зачем нужен контекст в gRPC-запросах и что происходит после его отмены Контекст как инструмент управления жизненным циклом запроса в Go Передача дедлайнов, сигналов отмены и метаданных между клиентом и сервером…

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

Зачем нужны каналы (Channel) в корутинах?

Зачем нужны каналы (Channel) в корутинах? синхронизируют работу goroutine и обеспечивают обмен данными между ними позволяют безопасно передавать значения без блокировок и гонок выступают в роли конвейера или очереди…

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

К чему приводит незакрытый resp.Body после HTTP-запроса в Go?

Работа с HTTP в Go resp.Body представляет собой поток тела ответа Необходимо обязательно вызвать defer resp.Body.Close() В противном случае возникает утечка ресурсов, включая TCP-соединения TCP-соединения не…

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

Как в Go работает nil и что происходит при вызове метода на nil-ресивере?

Как в Go обрабатываются nil и вызовы методов на nil-ресивере nil в Go служит нулевым значением для указателей, интерфейсов, слайсов, карт, каналов и функций У метода может быть ресивер-указатель, значение которого в…

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

Как в Go удалить элемент из слайса?

Работа со слайсами (Go slices) Удаление элемента по индексу Для этого объединяют два подслайса: s = append(s[:i], s[i+1:]...) В результате формируется новый слайс без элемента с индексом i, а его длина уменьшается.…

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

Как корректно отменить горутину, выполняющую долгую операцию, например запрос к БД?

Как корректно отменять горутины, выполняющие долгие операции? для управления долгими горутинными операциями в Go используется контекст следует применять context.Context вместе с отменой (CancelFunc) context нужно…

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

Как оптимизировать использование памяти в Go на собеседовании?

Как эффективнее использовать память в Go? управление памятью при работе горутин и стека: Go применяет динамический стек, благодаря чему уменьшаются накладные расходы эффективное использование срезов и массивов:…

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

Как правильно очистить массив или слайс в Go?

массив имеет фиксированный размер, поэтому его очищают перезаписью элементов нулевыми значениями слайс — динамическая структура, которая ссылается на массив сбросить длину: slice = slice[:0] — элементы логически…

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

Как работает секционирование таблиц (table partitioning) в PostgreSQL?

Как работает секционирование таблиц (table partitioning) в PostgreSQL? большая таблица разделяется на отдельные части — партиции каждая партиция представляет собой таблицу с собственным условием отбора, например…

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

Как работают каналы в Go?

Каналы служат примитивом синхронизации и обмена данными между goroutine Они реализованы в виде буферизированных и небУферизированных очередей Размер буферизации задаёт число элементов, которые можно отправить в канал…

Читать ответ