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

Собеседование (мок-интервью) для Junior Python-разработчика | Хекслет

Публичное учебное интервью для Junior Python-разработчика с теорией, обсуждением опыта и двумя лайвкодинг-задачами. Интервьюер разбирает ответы кандидата, указывает пробелы и рекомендует направления дальнейшей подготовки.

Источник: Hexlet

Открыть на YouTube

Таймлайн

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

Это учебное мок-интервью Junior Python-разработчика Дмитрия: после рассказа о переходе из проектирования в backend-разработку он отвечает на вопросы о базах данных, алгоритмах, Python, Django и асинхронности. В лайвкодинге кандидат решает проверку валидности скобок через стек и словарь пар, а затем приходит к идее задачи о воробье и поезде: расстояние птицы считается через время движения поезда. В финале интервьюер отмечает сильное понимание устройства Python и конкурентности, советует подтянуть базы данных и больше сравнивать свои решения алгоритмических задач с чужими.

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

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

  • Повторить ACID, транзакции и уровни изоляции: в интервью кандидат не смог расшифровать ACID, хотя смог объяснить атомарность операции и важность консистентности данных.
  • Различать индексирование и кэширование: индекс — дополнительная структура для ускорения поиска, а не сохранённый результат запроса; для поиска по диапазону дат обсуждается индекс и логарифмическая сложность поиска.
  • Подготовить объяснение сложности поиска в сбалансированном бинарном дереве и B-дереве: при делении пространства поиска пополам это O(log n).
  • Освежить Python: изменяемость коллекций, особенности кортежа с изменяемыми объектами, хешируемость ключей словаря и создание неизменяемого dataclass через frozen=True.
  • Для asyncio уметь объяснить Event Loop, неблокирующий I/O и кооперативную многозадачность: CPU-bound вычисление без await блокирует цикл событий, поэтому для него может потребоваться multiprocessing.
  • В задачах на валидные скобки использовать стек и словарь соответствий открывающих и закрывающих скобок; после решения полезно сравнивать свой код с альтернативами на LeetCode или Codewars.
  • На лайвкодинге полезно сразу выписывать граничные тест-кейсы и проговаривать ход мысли, но не усложнять структуру данных до проверки простой идеи.

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