Что будешь делать если долго выводится отчет клиенту и нет требований о производительности

«Что будешь делать если долго выводится отчет клиенту и нет требований о производительности» — вопрос из категории Требования и ТЗ, который задают на 23% собеседований Менеджер Проектов. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Проведу анализ узких мест: проверю запросы к БД, оптимизирую их (индексы, денормализация), проанализирую код генерации отчета. Если проблема в больших данных — предложу пагинацию, кеширование или асинхронную генерацию с уведомлением.

Пример оптимизации SQL:

-- Было
SELECT * FROM orders WHERE date BETWEEN '2023-01-01' AND '2023-12-31';

-- Стало (с индексом по date)
SELECT id, customer, amount FROM orders 
WHERE date BETWEEN '2023-01-01' AND '2023-12-31'
LIMIT 1000 OFFSET 0;

Обсужу с клиентом приемлемое время формирования и уточню требования. Если отчет критичен — выделю ресурсы на рефакторинг.