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

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

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

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

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

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

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

Каталог

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

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

В чём особенность работы с типами данных в Python по сравнению с другими языками (динамическая типизация)?

В Python тип принадлежит объекту, а имя может последовательно ссылаться на объекты разных типов. Совместимость операций проверяется во время выполнения, если её заранее не проверили внешние инструменты.

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

Что такое Identity Map в паттерне Data Mapper в SQLAlchemy? Как этот механизм гарантирует, что два разных запроса к одной и той же строке базы данных в рамках одной сессии вернут ссылку на один и тот же объект в памяти Python?

Identity Map хранит соответствие ORM-идентичности и Python-объекта внутри Session. При загрузке той же строки SQLAlchemy использует уже присутствующий экземпляр, а не создаёт независимую копию.

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

В Python есть GIL — как тогда бэкенд обрабатывает много одновременных запросов?

GIL не мешает конкурентному ожиданию сети и БД. Бэкенд использует async I/O, потоки для блокирующих операций и несколько worker-процессов для параллельного выполнения Python-кода.

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

Что такое замыкание (closure) в Python и как на основе этого механизма работают декораторы? Напишите или объясните, как создать параметризованный декоратор, который сам принимает аргументы.

Замыкание сохраняет доступ к переменным внешней функции после её завершения. Параметризованный декоратор использует три уровня: параметры → функция → вызов обёртки.

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

Скриншот содержит код на Python с использованием asyncio, но в изображении явно не указано ни вопроса, ни задачи для собеседования.

Ошибка в имени asyncio.Sleep: функция называется sleep с маленькой буквы. После исправления последовательные await займут примерно 5 секунд, а не 3.

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

Какая базовая ошибка в Python, чтобы поймать всё, и от чего наследовать пользовательские исключения?

Корень иерархии — BaseException, но прикладные ошибки обычно ловят через Exception. Собственные исключения следует наследовать от Exception или его подходящего подкласса.

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

Как устроена интеграция Python-приложения с Celery и Redis/RabbitMQ? Что происходит, если во время выполнения тяжелой фоновой задачи бэкенд падает, и как обеспечить идемпотентность — повторяемость без ошибок — этой задачи?

Веб-приложение кладёт задачу в брокер, отдельный Celery worker её исполняет. Падение веб-процесса не равно падению worker; повторную доставку нужно считать нормальным событием.

Читать ответ