Вопросы и ответы на собеседовании для старшего разработчика Python

Этот профиль интервью Senior Python Developer объединяет в себе обзор того, что нужно искать в кандидатах, и сбалансированную выборку подходящих вопросов для интервью.

Являетесь ли вы кандидатом?

Пройдите собеседование с помощью нашего руководства

вопросы для собеседования со старшим разработчиком питона

Перейти к разделу:

  • Введение
  • Вопросы по информатике
  • Вопросы, связанные с конкретной ролью

Вопросы для собеседования со старшим разработчиком Python

В некоторых отношениях даже самая техническая роль требует качеств, присущих сильным кандидатам на все должности: желание учиться; квалифицированные навыки; страсть к работе.

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

- Понимание основных алгоритмических концепций
- Обсудите основные алгоритмы, как они будут находить/думать/сортировать
- Могут ли они продемонстрировать более широкое понимание баз данных
- Есть ли у них подход к моделированию?

Следят ли они за последними разработками?? Если да, то как? Узнайте об их любимых технических книгах. За кем они следят в Twitter, какие блоги посещают?

Активны ли они на Github? Вносят ли они вклад в какие-либо проекты программного обеспечения с открытым исходным кодом? Или принимают участие в хакатонах. Короче говоря, насколько силен их интеллектуальный интерес в выбранной ими области? Как это демонстрируется? Спросите о побочных проектах (например, разработке игр). Целеустремленные, любознательные кандидаты будут выделяться на фоне других.

Вопросы по информатике

  • Используя псевдокод, реализуйте двоичный поиск отсортированного массива целых чисел
  • Что такое хороший модульный тест и что такое функциональный тест?
  • Опишите основные принципы REST API. Чем эта философия отличается от RPC?

Вопросы, специфичные для конкретной роли

  • Передаются ли аргументы в Python по ссылке или по значению?
  • Почему функции считаются объектами первого класса в Python?
  • Какие инструменты вы используете для линтинга, отладки и профилирования?
  • Приведите пример фильтрации и сокращения над итерируемым объектом
  • Что такое понимание списка и диктанта?
  • Что мы имеем в виду, когда говорим, что определенное лямбда-выражение образует замыкание?
  • Назовите несколько отличий между Python 2.x и 3.x
  • Как управляется память в python?
  • Каков будет выход следующего кода?
    list = ['a', 'b', 'c', 'd', 'e'] print list[10:]
  • В Python используется глобальная блокировка интерпретатора. Значит ли это, что в нем не используются реальные потоки?
  • Возможно ли, чтобы поток-производитель, читающий из сети, и поток-потребитель, записывающий в файл, действительно работали параллельно?? Что насчет GIL?
  • Палиндромное число читается одинаково в обоих направлениях. Наибольший палиндром из произведения двух двузначных чисел равен 9009 = 91 ? 99. Найдите наибольший палиндром из произведения двух трехзначных чисел.
  • Каким будет вывод следующего кода на каждом шаге?
    класс C: dangerous = 2 c1 = C() c2 = C() print c1.опасный c1.dangerous = 3 print c1.опасная печать c2.dangerous del c1.опасная печать c1.опасная C.dangerous = 3 print c2.опасный
Рубрика: 
Ключевые слова: 
Автор: 
Источник: 
  • workable.com
Перевод: 
  • Дмитрий Л

Поделиться