Вернуться в видеотекуСобеседование на позицию Senior Python Developer 350т.р. #10
Техническое интервью по Python backend: язык, асинхронность, Django, SQL, базы данных, Docker и code review. Завершается проектированием масштабируемого сервиса обработки телеметрии.
- Направление
- Backend
- Формат
- Техническое собеседование
- Грейд
- Senior
- Длительность
- 24 мин
Коротко о видео
Запись построена как техническое интервью на позицию Senior Python Developer: после задач на поведение Python-выражений обсуждаются асинхронность, Django middleware, SQL и базы данных. Участник объясняет применение асинхронности для I/O-bound операций, разницу между реляционными и документными хранилищами, стоимость индексов при частых изменениях и способы не блокировать пользователя долгим отчётом. В финале разбирают архитектуру облачного сервиса для приёма зашифрованных координат от миллиона устройств с очередью, Consumer/worker-обработчиками и масштабированием нагрузки.
Затронутые темы
Что взять на заметку
- В Python-задачах проверяют понимание побочных эффектов операций со списками, различий `append` и `extend`, а также short-circuit-поведения логических операторов.
- По объяснению участника, асинхронность уместна прежде всего для I/O-bound операций; при небольшом числе параллельных потоков он допускает multithreading, а при большом числе ожидающих операций предпочитает async-подход.
- Django middleware описывается как промежуточный обработчик вокруг цикла request/response: он может обработать запрос до view и ответ до возврата клиенту.
- Для SQL-задания участник намечает `JOIN` по идентификаторам, группировку и условие на агрегат, но не формулирует готовый запрос.
- Индексы ускоряют чтение, но при множестве операций изменения требуют поддержки и перестроения индексов; для долгого отчёта предлагаются диагностика запроса, кэширование, фоновая задача и уведомление клиента через WebSocket.
- В архитектурной задаче данные можно принимать через очередь вроде Kafka, обрабатывать Consumer/worker-ами батчами и масштабировать обработчиков; статическое распределение устройств между worker-ами может давать перекос нагрузки.
- Участник прямо отмечает ограниченный опыт с NoSQL-масштабированием, недавней production-практикой SQL и протоколами трекеров.