Этот профиль интервью 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
Поделиться