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

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

193 вопроса с собеседований в ivi

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

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

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

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

Каталог

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

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

[имя] спросил: Если декоратор навешивается заново на функцию, останется ли предыдущее значение переменной count или оно сбросится в 0?

Это зависит от места хранения count. Если count = 0 создаётся внутри каждого вызова декоратора, новая обёртка получит новый счётчик; глобальный или общий объект может сохранить значение.

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

Что такое паттерн Transactional Outbox?

Transactional Outbox сохраняет бизнес-изменение и запись события в одной транзакции БД, а отдельный процесс доставляет событие в брокер. Так устраняется ненадёжная двойная запись.

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

обеспечить вызов end() в функции g()

Поместите yield в try/finally и вызывайте end() в finally. Это обеспечивает очистку при исчерпании или закрытии начатого генератора, но не гарантирует мгновенное закрытие брошенного генератора.

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

telecast_qs = Telecast.objects.all()[:10]

При ForeignKey tv_channel шаблон может породить N+1: один запрос за передачами и отдельный за каналом каждой записи. Загрузите канал через select_related до обхода.

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

[имя] спросил: Зачем нужен GIL в Python, и какие есть способы запускать Python параллельно?

В обычной CPython-сборке GIL защищает внутреннюю работу с объектами, но ограничивает параллельное исполнение Python-кода потоками. Для CPU-задач используют процессы, нативные расширения или free-threaded сборку.

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

[имя] спросил: Можно ли обратиться к wrapper.calls как после определения функции def wrapper, так и внутри самого тела wrapper?

К атрибуту wrapper.calls можно обращаться после определения функции и внутри её тела, если атрибут уже создан к моменту чтения. Функция — объект, которому можно присваивать атрибуты.

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

У нас есть каталог фильмов, который ранжируется моделью, и отдельно блоки-коллекции этих фильмов с разным количеством контента и типами. Нужно для пользователя ранжировать эти блоки на главной странице. Как бы ты подошёл к решению этой задачи, какие метрики предложил бы?

Сначала отберите допустимые блоки, затем ранжируйте их по ожидаемой пользовательской пользе с учётом состава, размера, типа и пересечения фильмов. Среднего score айтемов обычно недостаточно.

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

Как устроен двухуровневый и двубашенный рекомендатель и зачем он нужен?

Двухуровневый рекомендатель сначала быстро отбирает кандидатов, затем точно ранжирует небольшой набор. Двубашенная модель отдельно кодирует пользователя и объект и часто используется на первом этапе.

Читать ответ