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

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

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

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

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

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

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

Каталог

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

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

Как быстро отправить 10 000 запросов: какие подходы выбрать и как оптимизировать нагрузку?

Как быстро отправить 10 000 запросов: подходы и оптимизация параллельная отправка запросов с помощью многопоточности или асинхронности применение пулов соединений (connection pooling) для повторного использования TCP…

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

Как в DI-контейнере зарегистрировать несколько реализаций одного интерфейса и получить нужную?

Большинство DI-контейнеров поддерживает регистрацию нескольких реализаций одного интерфейса Для каждой реализации задаются отдельные идентификаторы — ключи, имена или теги Все реализации можно получить через общую…

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

Как в Dictionary<TKey, TValue> определяется bucket и почему коллизии влияют на производительность?

Как устроен Dictionary<TKey, TValue>: бакеты и коллизии Dictionary представляет собой хеш-таблицу, использующую массив бакетов Для ключа вычисляется индекс бакета: hash(key) % capacity В одном бакете оказываются…

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

Как в Django устроены транзакции и откат изменений?

компонент для взаимодействия с БД, гарантирующий атомарность операций применяется модуль django.db.transaction доступны декораторы и менеджеры контекста: @transaction.atomic — помещает блок кода внутрь транзакции with…

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

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

Как устроен preemption в Go runtime? механизм принудительного вытеснения горутин является частью Go scheduler (планировщика) останавливает горутину, не позволяя ей монополизировать CPU применяется при длительных…

Читать ответ
System Design

Как в Go обрабатываются ошибки и паники?

Как в Go обрабатываются ошибки и паники? ошибка представляется как значение через интерфейс error после вызова функции выполняется явная проверка (if err != nil) паника возникает при критических ошибках, например при…

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

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

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

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

Как в Go работает zero-copy и когда данные можно передавать между слоями без аллокаций?

zero-copy в Go означает передачу ссылок на данные без выделения памяти под копии, но требует контроля доступа и сохранения данных неизменными.

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

Как в Go реализовано обобщённое программирование (generics)?

Обобщённое программирование (generics) в Go появилось начиная с Go 1.18 (2022) обобщённые функции и типы объявляются с параметрами типа для этого применяется синтаксис с квадратными скобками: func Foo[T any](param T)…

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

Как в Go реализованы принципы ООП?

В Go нет классов: для представления данных применяются структуры Поведение инкапсулируется с помощью методов, связанных с типами структур Интерфейсы задают набор методов, которые могут реализовывать типы, обеспечивая…

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

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

В Go отсутствует классическое наследование: здесь нет классов и конструкции extends Для повторного использования кода применяют встраивание (embedding) структур При встраивании поля и методы вложенной структуры…

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

Как в Go синхронизировать параллельные вычисления?

область: конкурентность в Go базовый механизм: goroutines (легковесные потоки) синхронизация: с помощью channels — обмен данными и сигналами между goroutines для реализации блокировок и мьютексов используется пакет…

Читать ответ