1967 вопросов для подготовки на позицию Backend-разработчик
1967 вопросов1634 компании353 технологии
Что проверяют на интервью
Как устроена подборка
Подборка помогает системно подготовиться к интервью на позицию Backend-разработчик: проверить теорию, потренировать практические задачи и объяснение решений. В подборке чаще встречаются темы: backend, api, database.
Выбор зависит от профиля нагрузки и инфраструктуры, а не только от скорости фреймворка. FastAPI удобен для async API, Django — для приложения с развитой встроенной функциональностью.
Зафиксируйте API в машиночитаемой схеме и проверяйте совместимость изменений с поддерживаемыми клиентами в CI. Дополните проверку схемы контрактными тестами реальных запросов и ответов.
Используйте постепенную замену экземпляров, readiness-проверки и завершение активных запросов. Несовместимую миграцию разбейте на expand–migrate–contract, чтобы обе версии временно работали с одной схемой.
Django удобен для продукта с ORM, миграциями, админкой и встроенными web-механизмами; FastAPI — для API с явными схемами и ASGI-подходом. Выбор зависит от задач и команды, не только от benchmark.
Опишите фактическое развёртывание: какие сервисы контейнеризовали, где запускали и какие компоненты оставались вне контейнеров. Не смешивайте структуру кода с инфраструктурной топологией.
Возможный выигрыш gRPC связан с бинарной сериализацией, строгим контрактом, переиспользованием HTTP/2-соединений и streaming. Конкретный прирост нужно измерить; сам переход не гарантирует ускорения.
Сначала сравните ожидаемое и фактическое число строк, loops, сортировки и buffers. Индекс может не помочь при слабой селективности, несовместимом выражении, больших OFFSET или дорогих обращениях к таблице.
Сначала проверьте контракт старых клиентов и требования к надёжности: ссылка на ещё не созданный файл вводит в заблуждение, а десятиминутная BackgroundTasks-задача может потеряться при рестарте.
Лучший первый шаг — снять профиль запросов и найти причину 35 обращений. После этого выборочно применяют select_related или prefetch_related к действительно нужным связям.
Проверяйте контракт на реальных ожиданиях клиентов, а не только серверной схеме. Даже добавление поля может сломать строгий parser, подпись payload или клиентскую бизнес-логику.
In-memory кеш отдельный у каждого процесса: данные дублируются, прогрев и инвалидирование расходятся, а при рестарте содержимое теряется. Рост числа workers увеличивает расход памяти.
Depends(get_db) просит FastAPI получить зависимость через get_db и передать её результат обработчику. Это отделяет создание и освобождение ресурса от бизнес-логики ручки.