Вернуться в видеотекуСобеседование python разработчик с подписчиком. Ведёт Никита Соболёв.
Запись учебного собеседования по Python с двумя начинающими кандидатами. Ведущий разбирает основы среды выполнения Python, внутреннее устройство объектов, отладку, тесты, HTTP, JSON, декораторы и типизацию.
- Направление
- Backend
- Формат
- Мок-собеседование
- Длительность
- 1 ч 42 мин
Коротко о видео
Это публичное учебное мок-собеседование по 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__`.
- По мнению собеседников, типизацию нужно поддерживать в уже типизированном проекте, а алгоритмы стоит изучать как набор инструментов для реальных задач, а не как самоцель.