С какими челленджами сталкивались в работе
Что проверяют
Что вы называете сложной задачей и как о ней рассказываете. Интервьюер смотрит, отделяете ли вы техническую проблему от организационной, доводите ли рассказ до причины и умеете ли признать, что решение чего-то стоило.
Как отвечать
Возьмите один случай и доведите его до сути, а не перечисляйте пять поверхностно. Рабочая структура: что сломалось или тормозило, как вы это заметили, что оказалось причиной, что сделали, чем закончилось.
Сильные примеры на питоне обычно про одно из этого:
- нагрузка упёрлась в процессор, а код был написан на
asyncio, который здесь не помогает, и вычисления пришлось выносить в отдельные процессы; - сервис съедал память, потому что данные читались целиком, лечилось генератором или чтением пачками;
- запросов к базе оказалось по одному на строку, лечилось предзагрузкой связей;
- обновление зависимости сломало поведение, и пришлось разбираться в изменившемся контракте библиотеки.
Обязательно скажите, чем измеряли: профилировщик, время ответа в логах, счётчик запросов. Фраза «стало быстрее» без замера звучит как догадка. И назовите цену решения: усложнился код, появился кэш, который надо инвалидировать, выросла нагрузка на очередь.
Где спотыкаются
Рассказывают про сроки и разногласия с коллегами вместо инженерной задачи. Вопрос звучит на техническом интервью, значит ждут проблему в системе, а не в людях.
Называют выдуманную долю выигрыша. Проверяется одним уточнением: на каком объёме данных мерили и что было точкой отсчёта.
Предлагают асинхронность как универсальное лекарство. asyncio помогает, когда программа ждёт ввод-вывод, и ничего не даёт счётной нагрузке, это классическая ловушка в ответе.