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

Программист в 13 лет? / Техсобес на позицию Trainee Python Developer / Mock interview

Запись mock-собеседования на Trainee/Junior Python Developer: теория Python и веб-разработки, затем лайвкодинг с обходом каталогов и итоговый фидбек кандидату.

Источник: Python Mentor

Открыть на YouTube

Таймлайн

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

Это тестовое (mock) собеседование 13-летнего кандидата на позицию Trainee/Junior Python Developer. Интервьюеры проверяют понимание CPython, ООП, исключений, итераторов и генераторов, Django/DRF, CORS, REST, ORM и транзакций, одновременно поясняя неточные ответы кандидата. В лайвкодинге кандидат с подсказками реализует обход файлового дерева, чтение файлов и декомпозицию решения; в финале получает развёрнутую обратную связь по теории, резюме и стилю кода.

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

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

  • Резюме стоит оставлять только с навыками, которые кандидат может уверенно объяснить на техническом интервью; интервьюеры отдельно разбирают завышенные формулировки про английский, SQL, ORM и DRF.
  • Для подготовки нужно повторить путь выполнения кода в CPython: парсинг, AST, байт-код, роль интерпретатора и различия между CPython, PyPy и JIT-компиляцией.
  • Наследование следует применять к отношениям «общее—частное», а не для удобной передачи полей между несвязанными сущностями; для связи заказа и пользователя подходит композиция, а не наследование.
  • Нужно уметь объяснить `try`/`except`, необработанные исключения, а также создание пользовательского исключения через класс-наследник `Exception`.
  • Большие файлы не следует целиком загружать через `read()` или `readlines()`; файловый объект можно обходить построчно в цикле `for`.
  • Django способен возвращать JSON без DRF, а Django REST Framework упрощает создание REST API; отдельно стоит понимать назначение CORS и роль заголовка `Access-Control-Allow-Origin` при междоменных запросах.
  • Для реальных изменений данных важно изучить транзакции и уровни изоляции, а в лайвкодинге — `os.walk`, `os.path.join`, одноразовость генераторов, осмысленные имена и декомпозицию функций по ответственностям.

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