ТОП 70 ВОПРОСОВ НА СОБЕСЕДОВАНИИ SENIOR PYTHON DEVELOPER
Алексей Кольцов
0:00 / 0:00
ТОП 70 ВОПРОСОВ НА СОБЕСЕДОВАНИИ SENIOR PYTHON DEVELOPER
10 650 просмотров · 10 месяцев назад
Алексей Кольцов
220 подписчиков
10 650 просмотров · 10 месяцев назад
Телеграм канал:
https://t.me/commit_on_cash
Курс для подготовки к Python собеседованию:
https://stepik.org/a/251942
Ссылка на файл с вопросами:
https://docs.google.com/document/d/1H...
В этом видео я собрал ТОП 70 реальных вопросов, которые задают на собеседованиях Python-разработчиков уровня Senior.
📌 Видео будет полезно:
— тем, кто готовится к собеседованию на Middle/Middle+/Senior Python developer
— тимлидам и интервьюерам (как чек-лист для проверки кандидатов)
— тем, кто хочет прокачать базу и системное мышление в Python
0:00 - Вступление
9:45 - Поехали
10:17 - 1) За счет чего RabbitMQ гарантирует доставку сообщений?
11:41 - 2) Механизм очистки памяти в Python
13:10 - 3) Mock объект тестирования. Что это?
15:18 - 4) Как работает event loop?
18:04 - 5) Как в асинхронности происходит переход между тасками?
19:00 - 6) Как Python хранит атрибуты в объектах?
20:16 - 7) Что принимает функция Depends() в FastAPI какой объект с точки зрения Python?
21:59 - 8) Что использовать для логирования ошибок в Celery?
24:00 - 9) Какой магический метод нужно использовать для изменения типов данных?
24:38 - 10) Декоратор для асинхронной функции ?
26:41 - 11) Можно ли на генераторах создать await функцию?
28:17 - 12) Механизм разрешения коллизий в словаре в Python
32:23 - 13) Где выполняются корутины?
32:41 - 14) Как несколько процессов могут работать с одним файлом или объектом? вопрос с точки зрения безопасности
35:34 - 15) Что такое семафоры?
36:20 - 16) Чем отличаются Left, Right, Inner, Outer JOIN друг от друга?
36:56 - 17) Как под капотом работает Kafka?
39:14 - 18) Что такое топик и партиция в Kafka?
40:25 - 19) За счет чего RabbitMQ гарантирует доставку сообщений?
41:13 - 20) Чем помогает Docker и чем отличается от виртуальной машины?
42:49 - 21) Что такое под и нода в k8s?
44:52 - 22) Из-за чего асинхронный cервис при выборе большого количества данных может деградировать?
46:58 - 23) В каких случаях стоит использовать пессимистичную блокировку select_for_update?
48:46 - 24) Lazy load какие проблемы несет?
49:40 - 25) Частичные индексы в БД?
50:31 - 26) Проблема удаление нового поля в миграциях если есть CI/CD
52:17 - 27) Как понять что приложение сломалось?
54:04 - 28) Декоратор по замеру времени функции
55:05 - 29) Как чужой коммит впихнуть в свою ветку?
55:15 - 30) Как под капотом работает git merge?
56:13 - 31) Как срочно залить изменения в main?
57:07 - 32) name mangling
57:39 - 33) Как защититься от неотложенных/непрочитанных брокером сообщений?
59:10 - 34) Есть ли приоритизация сообщений в RabbitMQ?
1:00:14 - 35) Как приоритеты в RabbitMQ переходят от очереди к очереди? Например приоритетная очередь стала пустой
1:00:48 - 36) Как Celery умеет работать с приоритетными сообщениями?
1:01:38 - 37) Как узнать что таска выполнится?
1:02:06 - 38) Кейс
1:03:49 - 39) Как event loop определяет какой корутине передать управление?
1:06:04 - 40) Как работает Lock в многопоточке?
1:08:55 - 41) Как сравниваются значения в множестве?
1:09:54 - 42) Отработает ли блок finnaly, если в try есть return?
1:10:35 - 43) Какие есть сущности в docker?
1:11:17 - 44) Примерная структура в Dockerfile
1:13:00 - 45) Что такое прогрев пула в SQLAlchemy?
1:14:16 - 46) Какие проблемы есть у асинхронного кода?
1:16:05 - 47) Что такое pre-commit?
1:16:26 - 48) Что быстрее отрабатывает в авторизации jwt или сессии и почему?
1:17:18 - 49) Чем отличается функциональное программирование от ООП?
1:19:19 - 50) Основные команды в docker
1:20:25 - 51) Какие структуры данных есть в Redis?
1:21:22 - 52) DLX
1:21:36 - 53) Что такое websocket и где может использоваться?
1:23:18 - 54) Совершенная хэш-функция? решает ли коллизии?
1:24:10 - 55) Сложность поиска в разных структурах данных
1:26:19 - 56) Проблема "гонка данных" или race condition. Как ее решать?
1:27:55 - 57) Что такое идемпотентность?
1:29:03 - 58) Кейс
1:31:46 - 59) Гарантии доставки в RabbitMQ?
1:32:05 - 60) Гарантии доставки в Kafka?
1:32:19 - 61) Как катить билды?
1:35:35 - 62) Проблемы с логированием в асинхронном коде?
1:36:43 - 63) Может ли экземпляр класса быть ключом в словаре?
1:37:00 - 64) Что такое корутина? А что такое сопрограмма?
1:37:35 - 65) В чем основная задача GIL?
1:39:08 - 66) Что такое композиция?
1:40:21 - 67) Как работают map и filter?
1:41:19 - 68) Как устроен декоратор?
1:41:34 - 69) Функция является членами 1-го класса
1:41:57 - 70) Что такое контекстный менеджер и зачем он нужен?
1:43:36 - 71) Что такое замыкания?