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

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

881 вопрос с собеседований в Ozon

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

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

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

Подборка объединяет вопросы, отмеченные на этапах интервью в Ozon. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: database, backend, sql.

Каталог

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

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

В чём разница между B-tree и бинарным деревом?

B-tree представляет собой самобалансирующееся упорядоченное дерево, рассчитанное на обработку больших объёмов данных на дисках и в СУБД В узле B-tree хранится несколько ключей и множество потомков (m-арное дерево),…

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

В чём разница между Semaphore и SemaphoreSlim в .NET?

Semaphore и SemaphoreSlim синхронизация потоков в .NET Semaphore — системный объект ядра ОС для межпроцессной синхронизации SemaphoreSlim — облегчённый механизм, работающий внутри одного процесса Semaphore потребляет…

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

В чём разница между уровнями изоляции Read Committed и Repeatable Read?

В чём разница между Read Committed и Repeatable Read? уровни изоляции в СУБД (ACID) Read Committed: транзакция получает только зафиксированные данные защищает от грязных чтений допускает неповторяющиеся чтения…

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

Всегда ли экземпляры value type находятся в стеке и какие есть исключения: boxing, поля классов и статические переменные?

Всегда ли value type размещается в стеке? Исключения Value type обычно размещается в стеке Исключения: Boxing: value type преобразуется в объект и размещается в куче Поля ссылочных типов (классов): поля value type…

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

Где в памяти хранятся типы данных в C#?

Контекст: управление памятью в C# В C# типы разделяются на значимые (value types) и ссылочные (reference types). Значимые типы размещаются в стеке (stack) либо непосредственно входят в состав объектов. Ссылочные типы…

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

Зачем в Go закрывать тело HTTP-ответа?

Зачем закрывать тело HTTP-ответа в Go? Тело HTTP-ответа представляет собой поток данных (io.ReadCloser) Вызов Close освобождает сетевые ресурсы и дескрипторы Если не закрыть тело, возможны утечки памяти и зависшие…

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

Зачем нужны транзакции в базе данных?

Для чего нужны транзакции? база данных, целостность объединение нескольких операций в единое целое атомарность: либо выполняются все операции, либо ни одна изоляция: исключает конфликты между параллельными операциями…

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

Зачем переопределять GetHashCode и Equals и как Dictionary<TKey, TValue> их использует?

Зачем нужны GetHashCode и Equals и какова их роль в Dictionary<TKey, TValue> Контекст: переопределение методов в .NET для хеширования объектов и определения их равенства GetHashCode формирует для объекта целочисленный…

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

Как List<T> устроен внутри и как меняет размер массива при добавлении элементов?

Устройство List<T> и изменение вместимости массива List<T> в .NET представляет собой динамический массив — собственную оболочку над обычным массивом Элементы хранятся в массиве T[], который изначально имеет…

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

Как в Go реализовать graceful shutdown с defer, контекстом и обработкой ошибок в группах горутин?

Как в Go реализовать graceful shutdown с defer, контекстом и обработкой ошибок в группах горутин? управлять завершением приложения через context.Context (cancel/cancellation) применять defer для освобождения ресурсов,…

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

Как масштабируется Apache Kafka?

распределённая публично-подписная система потоковой обработки событий (event streaming) масштабирование выполняется за счёт партиционирования топиков каждый топик разделён на партиции, что обеспечивает параллельную…

Читать ответ