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

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

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

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

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

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

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

Каталог

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

Найдено: 248
Лайвкодинг

Система уведомлений в Django

Наследники не реализуют общий send(message), а базовый метод молча ничего не делает. Нужен единый интерфейс отправителя, реальные реализации send и передача экземпляра, а не класса.

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

Создавали ли вы асинхронные функции при работе с Python, например в Django или с asyncio?

Назовите реальные async-функции и зачем они были нужны: параллельное ожидание HTTP, БД или других I/O. async def само по себе не ускоряет функцию и не запускает её автоматически.

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

Вы хорошо описали диагностику через EXPLAIN ANALYZE и причины выбора типа сканирования. А как бы вы выбрали связанные объекты в Django ORM, чтобы минимизировать количество запросов к базе?

Сначала определяют, какие связи реально будут прочитаны: одиночные загружают select_related, коллекции — prefetch_related. Затем измеряют число запросов и объём данных на полном сценарии рендера.

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

Ты работал в основном с FastAPI или с Django? Можешь рассказать про select_related и prefetch_related — что из этого что и зачем?

В Django select_related получает одиночные связи через SQL JOIN, а prefetch_related загружает связанные объекты отдельными запросами и связывает их в Python. Оба помогают устранить N+1.

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

Как в Django Admin реализовать ссылочный переход на формы/страницы в changelist?

Добавьте метод ModelAdmin в list_display и возвращайте безопасно сформированную ссылку через format_html(). URL формы строят reverse() по имени admin-маршрута, а не конкатенацией строки.

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

Как в Django ORM использовать F()-выражения для предотвращения состояния гонки (Race Condition) при обновлении счётчиков?

F() выполняет изменение относительно текущего значения прямо в SQL: update(counter=F('counter') + 1). Это устраняет потерю инкрементов из-за схемы «прочитать в Python, увеличить, записать».

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

Что вам ближе: Django или FastAPI, почему? Приходилось ли подключать Swagger и писать API-документацию? В чём различия в асинхронности?

Сравнивайте инструменты по задаче: Django даёт интегрированный набор web-возможностей, FastAPI сфокусирован на API, типах и OpenAPI. Личное предпочтение подкрепите реальным опытом.

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

Какие подводные камни могут быть у добавления ссылок в Django Admin changelist?

Основные риски — XSS в HTML, неверные URL, утечка доступа и N+1 запросы на связанных объектах. Ссылку нужно строить безопасно и отдельно проверять права на целевую страницу.

Читать ответ