Вернуться в видеотеку

PHP-разработчик хочет перейти на Python, т.к в нём он как рыба в воде? / Техсобес Middle Python Dev

Разбор mock-собеседования Python-разработчика, переходящего из PHP. После технической части интервьюеры дают подробный фидбек по знаниям, резюме и подготовке к реальным интервью.

Источник: Python Mentor

Открыть на YouTube

Таймлайн

Коротко о видео

Это тестовое (mock) техническое собеседование на позицию Middle Python Developer с кандидатом Матвеем, который работает PHP-разработчиком и хочет перейти в Python; он прямо говорит, что коммерческого опыта на Python у него нет. Интервьюеры разбирают его понимание монолитов и микросервисов, REST API, тестирования, областей видимости, декораторов, генераторов, памяти, асинхронности, Django, структур данных и ООП. В финальном фидбеке интервьюеры считают, что для заявленного middle-уровня кандидату не хватает фундаментальных знаний Python, ОС, деплоя и архитектуры, и советуют также яснее подтвердить Python-навыки в резюме.

Что взять на заметку

  • Разделить в подготовке понятия монолит, микросервисы и REST API: монолит тоже может публиковать API, а REST не является признаком микросервисной архитектуры.
  • Повторить HTTP-семантику REST: ресурсы и методы, идемпотентность, различие команд и запросов, а также правила кэширования.
  • Освоить запуск Python-веб-приложений вне development server: Dockerfile и entrypoint, WSGI/ASGI, роль Gunicorn и отличие локального запуска от production-деплоя.
  • Практически отработать unittest.mock: patch зависимостей в правильном namespace, проверку вызовов, моки файлов и изоляцию тестов, запускаемых параллельно.
  • Повторить LEGB, builtins, замыкания, декораторы и дескрипторы; уметь объяснить, как внешние зависимости влияют на тестируемость функции.
  • Уметь объяснять генераторы и async/await через реальные сценарии: потоковую обработку больших файлов или сетевых данных, неблокирующий I/O и работу event loop, а не ускорение CPU-вычислений.
  • Повторить диагностику роста памяти, reference counting и cyclic garbage collector, а также структуры данных: почему очередь на list с операциями у начала медленнее deque/связанной очереди.

Рекомендуем посмотреть