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

Джун-самоучка получил оффер всего за день? / Техсобес Junior Python Developer / Mock interview

Мок-собеседование с самоучкой на позицию Junior Python Developer. Разговор охватывает Python, тестирование, asyncio, веб-фреймворки, архитектурные принципы, БД и производительность, после чего интервьюер даёт развёрнутый фидбек.

Источник: Python Mentor

Открыть на YouTube

Таймлайн

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

Это тестовое (mock) собеседование Junior Python Developer: кандидат Сергей отвечает на вопросы о тестировании, асинхронности, веб-разработке, ООП, базах данных и производительности Python. Интервьюер разбирает ответы, предлагает лайвкодинг по asyncio, декораторам и оптимизации цикла, а в финале даёт оценочный фидбек. Кандидат сообщает, что уже устроился автоматизированным тестировщиком и пришёл проверить глубину знаний и определить направления развития.

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

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

  • Для покрываемых unit-тестами функций важны внедрение зависимостей через аргументы, узкая ответственность и низкая когнитивная сложность; захват внешних объектов усложняет изоляцию тестов.
  • Нужно различать процесс с собственной памятью и поток исполнения внутри процесса; при кооперативной многозадачности задачи сами уступают управление, при вытесняющей переключение назначает ОС.
  • Вызов async-функции создаёт coroutine, но не исполняет её тело; для конкурентного запуска нужны задачи и передача управления event loop, например через await, create_task или gather.
  • asyncio и кооперативная многозадачность не гарантируют преимущество над потоками при любой нагрузке: существенны тип задачи, размер очереди event loop, потребление ресурсов и результаты измерений.
  • Для продакшена Flask-приложению нужен серверный слой, управляющий воркерами, распределением запросов и жизненным циклом процессов; встроенный development server для этого не предназначен.
  • Event-Driven Architecture обсуждается как способ отделить доменный сценарий от побочных действий, например отправки email, а также масштабировать обработчики; это архитектурный выбор с дополнительной сложностью.
  • При оптимизации CPython-кода в больших циклах полезно выносить поиск атрибута или метода за пределы цикла в локальную переменную; также обсуждаются JIT-компиляция и влияние размещения данных на кэш процессора.

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

2 ч 2 мин
BackendMiddle

Разработчик стал тим лидом в 22 года и борется с техническим долгом? / Техсобес Middle Python Dev

Разбор мок-собеседования Middle Python-разработчика с архитектурными вопросами и live-coding-задачей о конкурентных денежных переводах. В конце интервьюер даёт подробный субъективный фидбек по ответам и дизайну решения.

2 ч 1 мин
BackendSenior

Senior в 14 лет?! Это вообще законно? / Думали будет джун... / Техсобес Senior Python Developer

Развёрнутое мок-собеседование с 14-летним Python-разработчиком: разбор Telegram-бота, конкурентности, БД и архитектуры учебного проекта заметок. В конце — технический фидбек и рекомендации по развитию.