Библиотека собеса по Python | вопросы с собеседований
6.07K subscribers
688 photos
15 videos
600 links
Вопросы с собеседований по Python и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/6587aafa

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
Python-разработчик != ML-инженер

Разница — в знании математики. Если import numpy as np для вас потолок, пора углубляться. Мы запустили живые вебинары по математике для AI.

Что прокачаем за ближайшие дни:

Линейная алгебра: операции с матрицами, решение СЛАУ, линейные преобразования.

Прогностические модели: строим линейную регрессию, разбираем МНК.

Матричные разложения: SVD и собственные векторы для рекомендательных систем.

Все примеры — на Python. Вы научитесь применять математику для решения реальных бизнес-задач, а не просто решать уравнения на бумажке.

Поток закрывается 9 декабря.
https://clc.to/LojFzw
1
Как безопасно распараллелить CPU-работу с multiprocessing на разных ОС и без лишних копий?

На Linux избегайте fork с активным asyncio/TLS — используйте spawn/forkserver; на Windows только spawn. Передавайте крупные данные через multiprocessing.shared_memory/Array/Queue батчами, а не гигантскими pickles. Инициализацию делайте в if __name__ == "__main__":, задайте maxtasksperchild, корректно ловите SIGTERM и дренируйте очереди перед join().

🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

Библиотека собеса по Python
2
Как в Python работает метод __call__() и когда его имеет смысл использовать?

Метод call() предоставляет возможность сделать объект вызываемым, что позволяет использовать его как функцию. Этот метод можно внедрить в любой класс, чтобы экземпляр этого класса можно было вызывать напрямую. Это особенно удобно, когда класс решает одну основную задачу и может выступать в роли функции, при этом сохраняя свое внутреннее состояние и структуру.

Библиотека собеса по Python
1
Что будет, если ошибку не обработает блок except?

Если ошибка не будет обработана в блоке except, то программа прервется и выдаст сообщение об ошибке. Это называется необработанным исключением.

При возникновении исключения Python генерирует traceback — последовательность вызовов функций, которая привела к ошибке.
Если исключение не перехватывается блоком except, то traceback выводится пользователю и программа завершается аварийно.


Библиотека собеса по Python
Готовитесь к собеседованию в AI?

Вопросы по математической базе — стандартный этап отбора на позиции Data Scientist и ML Engineer. Вас спросят не только про код, но и про то, как работают алгоритмы «под капотом».

Прокачайте хард-скиллы на обновленном курсе «Математика для разработки AI-моделей».

Важный апдейт:

— теперь обучение включает живые вебинары;

— первый прошел, но второй стартует сегодня, 9 декабря;

— это шанс разобрать сложные вопросы с экспертами в прямом эфире.

Что внутри:

— линейная алгебра;

— матанализ;

— теория вероятностей.

Успейте присоединиться к потоку
1
В высоконагруженном Python-сервисе вы замечаете, что CPU загружен слабо, но задержки обработки запросов постоянно растут. При анализе видно, что большая часть времени тратится на сетевые операции. Что может быть причиной и как это исправить?

Причина в том, что сервис выполняет блокирующие I/O-операции в потоках или синхронно. Для исправления нужно перейти на асинхронную модель (asyncio, uvloop), использовать асинхронные драйверы для работы с БД/HTTP и вынести тяжёлые операции в отдельный пул процессов или потоков.

🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

Библиотека собеса по Python
В Kubernetes-продакшене пользователи жалуются, что при резком росте нагрузки часть запросов теряется или обрабатывается с большим лагом. Как вы будете искать и решать проблему?

Проверю метрики Pod’ов и нод (CPU/memory), события в кластере и логи ingress-контроллера. Удостоверюсь, что настроены requests/limits, HPA для автоматического масштабирования и readinessProbe, чтобы трафик шёл только на готовые Pod’ы. Для решения — оптимизировать ресурсы, включить горизонтальное или кластерное авто-масштабирование, при необходимости добавить очередь (Kafka/RabbitMQ) для сглаживания пиков.

🔹 Курс «Программирование на языке Python»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

Библиотека собеса по Python
Вы разрабатываете высоконагруженный сервис на FastAPI. При нагрузочном тестировании видно, что время отклика сильно растёт, хотя CPU и память используются не полностью. Какие могут быть причины и как вы будете решать проблему?

Чаще всего проблема в блокирующем коде (синхронные запросы к БД, внешним API или тяжёлые вычисления), который “забивает” event loop. Нужно вынести такие операции в ThreadPoolExecutor/ProcessPoolExecutor или заменить их на асинхронные аналоги (например, httpx.AsyncClient, databases, async-драйверы для SQL/NoSQL). Также стоит проверить конфигурацию Uvicorn/Gunicorn (число воркеров, workers-per-core) и настроить connection pooling.

Библиотека собеса по Python
3👍1