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

Собеседование python разработчик с подписчиком. Ведёт Никита Соболёв.

Запись учебного собеседования по Python с двумя начинающими кандидатами. Ведущий разбирает основы среды выполнения Python, внутреннее устройство объектов, отладку, тесты, HTTP, JSON, декораторы и типизацию.

Источник: Андрей += Пронин

Открыть на YouTube

Таймлайн

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

Это публичное учебное мок-собеседование по Python: Никита Соболёв интервьюирует двух начинающих разработчиков — Артёма и Александра — в формате совместного разбора и парного программирования. Участники обсуждают PATH, виртуальные окружения и вызов `python -m pip`, поиск атрибутов, метаклассы и дескрипторы, затем вместе решают задачи на простые числа, HTTP-запросы с сохранением JSON и декораторы с параметрами. В завершение Никита даёт обратную связь: в первую очередь освоить отладчик, тестирование и документацию Python Data Model; также обсуждаются типизация, алгоритмы, статический анализ и форматтер Black.

Затронутые темы

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

  • Активация виртуального окружения ставит его Python первым в `PATH`; вызов `python -m pip` помогает гарантировать, что `pip` относится к выбранному интерпретатору Python.
  • Для разбора доступа к атрибутам нужно понимать `__dict__`, поиск по наследованию, различие класса и экземпляра, а также протокол дескрипторов `__get__`, `__set__` и `__delete__`.
  • В задаче на простые числа участники нашли ошибку из-за проверки деления на 1: перебор делителей следует начинать с 2; конструкция `for ... else` выполняет ветку `else`, только если цикл не был прерван через `break`.
  • Никита считает умение пользоваться отладчиком первоочередным навыком для начинающего разработчика и связывает тестирование с более быстрым поиском ошибок и проверкой небольших изолированных функций.
  • При работе с HTTP нужно обрабатывать статусы ответа и явно задавать тайм-ауты, иначе запрос может надолго зависнуть; собранные данные можно сериализовать через `json.dump(..., file)`.
  • Декоратор с параметрами требует фабрики декоратора, самого декоратора и обёртки с `*args, **kwargs`; `functools.wraps` сохраняет метаданные исходной функции, включая `__name__`.
  • По мнению собеседников, типизацию нужно поддерживать в уже типизированном проекте, а алгоритмы стоит изучать как набор инструментов для реальных задач, а не как самоцель.

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