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

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

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

2194 вопроса 119 компаний 249 технологий

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

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

Анализ резюме

Каталог

Последние вопросы

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

Как управлять требованиями и зачем это нужно?

Управление требованиями — один из важнейших этапов жизненного цикла проекта, который помогает контролировать процесс и обеспечивать качество результата. Формализация требований: их документирование для единого…

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

Как ускорить SQL-запрос, который выполняется слишком долго?

изучить план выполнения с помощью EXPLAIN/EXPLAIN ANALYZE найти узкие места: сканирование таблиц и отсутствие индексов проверить и создать индексы для часто используемых колонок переписать запрос: упростить JOIN и по…

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

Как ускорить выполнение функции?

Улучшить алгоритм и уменьшить его сложность, например перейти с O(n²) на O(n log n) Исключить повторные вычисления с помощью кэширования или мемоизации Свести к минимуму обращения к внешним ресурсам, таким как база…

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

Как ускорить запрос к таблице при фильтрации по полю в формате JSON?

Как ускорить запрос с фильтрацией по JSON-полю? JSON позволяет хранить в БД данные с гибкой структурой создать индексы для отдельных ключей JSON, например GIN в PostgreSQL применять специализированные операторы…

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

Как ускорить поиск по имени автора при увеличении нагрузки?

Профилирование запроса и поиск узких мест Индексация авторского поля: создание индекса по имени Кэширование результатов часто выполняемых запросов Вертикальное или горизонтальное масштабирование БД Переход на…

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

Как ускорить прокрутку длинного списка сообщений в RecyclerView?

Оптимизация прокрутки длинного списка в RecyclerView UI-компонент Android для отображения локального списка применение ViewHolder сокращает число операций инфлейта recycling views: повторное использование виджетов во…

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

Как ускорить тяжёлые аналитические запросы в PostgreSQL?

Аналитика и оптимизация запросов Подбирать подходящие индексы — B-tree, GIN или GiST — для ускорения выборок Использовать партиционирование для таблиц с диапазонными и временными данными Применять материализованные…

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

Как устранить проблему N+1 запросов в Hibernate?

Hibernate — Java ORM, в котором по умолчанию используется ленивая загрузка Проблема N+1 возникает, когда один запрос выбирает основные данные, а ещё N запросов обращаются к связанным объектам при ленивой загрузке…

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

Как устранить проблему N+1 при загрузке связанных сущностей?

Как устранить проблему N+1 для связанных сущностей? Проблема N+1: вместо одного выполняется множество запросов Причина: отложенная (lazy) загрузка связанных данных Базовое решение: жадная загрузка (eager loading)…

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

Как устранить проблемы «волшебных чисел» в коде?

Как устранить проблемы "волшебных чисел"? область разработки и качество кода "волшебные числа" — необъяснимые статические константы, напрямую записанные в коде усложняют чтение и сопровождение программы создают риск…

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

Как устроен CountDownLatch и когда он разблокирует потоки?

Как устроен CountDownLatch? синхронизатор из Java concurrency создаётся с начальным счётчиком метод await() приостанавливает поток, пока счётчик не станет равен 0 метод countDown() уменьшает значение счётчика на 1…

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

Как устроен Dependency Injection (DI) в Spring и как вы применяли его на практике?

Spring DI — механизм внедрения зависимостей, работающий внутри IoC-контейнера Управлением объектами занимаются Bean Factory и ApplicationContext Компоненты автоматически создаются и связываются по типу или аннотациям…

Читать ответ