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

Python собеседование на 10000$

Длинное техническое Python-собеседование на архитектурную позицию. Интервьюер последовательно проверяет системное мышление кандидата — от ОС и языка до БД, сетей, Kafka и процессов разработки.

Источник: BELOV

Открыть на YouTube

Таймлайн

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

Запись представляет собой техническое собеседование на позицию Python-архитектора: кандидат кратко описывает опыт и отвечает на последовательные вопросы интервьюера. Обсуждаются архитектурные решения, процессы и потоки, контейнеризация и виртуализация, Python-конкурентность, фреймворки, Go, микросервисы, базы данных, сети, Kafka, тестирование и релизный процесс. В конце кандидат приводит пример проекта по обработке геномных данных в AWS и заявляет, что удалось снизить ежемесячные расходы примерно со 150 до 20–30 тысяч долларов; дальнейшую судьбу проекта он не знает, поскольку работу остановили из-за политики хранения данных.

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

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

  • Для архитектурных решений полезно уметь обосновать итеративный и командный подход: один человек задаёт фундамент, а детали корректируются командой по мере разработки.
  • Нужно различать процессы, потоки, ядро ОС, виртуальные машины, контейнеры, WSL и Hyper-V; в собеседовании отдельно проверяют не только определения, но и связи между этими понятиями.
  • Стоит подготовить объяснение конкурентности в Python: `asyncio`, потоки, GIL, блокирующий I/O, а также роль сборщика мусора и циклических ссылок.
  • Кандидата спрашивают о практических компромиссах Django, Flask и FastAPI, а также о том, когда начинать с монолита и когда оправданы микросервисы.
  • Важно уверенно объяснять контекстные менеджеры, декораторы, замыкания, ООП, функциональные элементы Python, изменяемые и неизменяемые структуры данных.
  • По базам данных проверяют выбор SQL и NoSQL по модели данных, различие sharding и replication, ORM и проблему N+1, транзакции, индексы, connection pool и диагностику медленных запросов.
  • Для распределённых систем нужны базовые знания HTTPS/TLS, Kafka и RabbitMQ, подтверждения обработки сообщений, а также CI-пайплайнов, unit- и интеграционных тестов, code review и релизного процесса.

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