Библиотека собеса по Python | вопросы с собеседований
الذهاب إلى القناة على Telegram
Вопросы с собеседований по Python и ответы на них. Как запустить своего ии-агента: https://clc.to/tvpmDQ По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/6587aafa Для обратной связи: @proglibrary_feeedback_bot
إظهار المزيد5 994
المشتركون
-124 ساعات
-17 أيام
-2630 أيام
أرشيف المشاركات
🔥 Последняя неделя перед стартом курса по AI-агентам
Старт курса уже 15го числа! Если вы планировали вписаться — сейчас ПОСЛЕДНИЙ шанс забронировать место
На курсе:
— разложим LLM по косточкам: токенизация, SFT, PEFT, инференс
— соберём RAG и научимся оценивать его адекватно
— построим настоящую мультиагентную систему — архитектуру, которая умеет расти
— разберём CoPilot, сломаем через prompt injection (спасибо Максу)
— и наконец, посмотрим, как это работает в MCP и реальных кейсах
📍 Это 5 живых вебинаров + раздатка + домашки + чат с преподавателями
И главное — возможность реально разобраться, как проектировать системы на LLM, а не просто «поиграться с API»
Промокод на 5.000₽: LASTCALL
👉 Курс здесь
Ваш Python-сервис использует asyncio и под нагрузкой работает стабильно, но при длительном тесте вы замечаете утечку памяти. Garbage Collector не освобождает объекты, хотя ссылки на них вроде бы удалены. Как будете искать и устранять проблему?
Проверю циклические ссылки и висящие таски, которые не завершаются. Использую tracemalloc, objgraph, gc.get_objects() для анализа живых объектов. Часто причиной бывает забытый asyncio.Task без await или глобальные кэши. Решение — правильно завершать корутины, использовать weakref, ограничивать размер кэшей (например, LRUCache) и при необходимости контролировать GC-паузы.
Библиотека собеса по Python
Что такое генераторы в Python и в каких случаях их стоит использовать вместо списков?
Генераторы — это объекты, которые «лениво» отдают значения по одному через yield или генераторные выражения. Они экономят память и ускоряют обработку больших данных, так как не хранят всю коллекцию целиком. Используются, когда нужно итерироваться по большим наборам данных или потокам, где не требуется хранить всё в памяти.
Библиотека собеса по Python
Чем отличаются mutable и immutable типы данных в Python и почему это важно понимать при работе с функциями и коллекциями?
Immutable (строки, числа, кортежи) — нельзя изменить после создания, операции создают новый объект.
Mutable (списки, словари, множества) — можно изменять "на месте".
Важно: передача в функции идёт по ссылке, и изменения в mutable-объекте сохраняются, что может привести к неожиданным побочным эффектам.
Библиотека собеса по Python
Как используется конструкция try — except? Какие ещё блоки для обработки исключений существуют?
try: Этот блок используется, чтобы обернуть код, который может вызвать исключение.
except: В этом блоке пишется код, который будет выполнен, если в блоке try возникнет исключение. Можно указать несколько блоков except.
else: Этот блок выполняется, если в блоке try не возникло исключений, то есть всё сработало без ошибок.
finally: Данный блок выполняется всегда после try, except и else, независимо от того, появилось исключение или нет (например, содержит инструкцию по закрытию файла).
Библиотека собеса по Python
Для чего используются метаклассы?
Метаклассы используются для создания классов и позволяют изменять поведение класса, модифицировать процесс его создания.
Основные случаи использования метаклассов:
— Реализация паттернов проектирования, таких как Singleton, Factory Method и другие.
— Проверка типов. Метакласс может валидировать атрибуты класса, параметры методов, выполнять инъекцию зависимостей.
— Регистрация классов. С помощью метакласса можно автоматически регистрировать создаваемые классы, например, в глобальном реестре.
— Создание протоколов и интерфейсов, похожих на языки, подобные Protocol Buffers.
— Логирование и трассировка. Метакласс позволяет следить за созданием класса и вызовами его методов.
— Расширение класса дополнительным функционалом. Добавление методов к классу через метакласс.
Библиотека собеса по Python
Иногда реально ощущение, что нас держат в Матрице.
Большинство сидит, читает статьи про ML, смотрит ролики «как это работает» — и всё.
❗ Сегодня последний день промокода Lastcall (−5000 ₽).
Уже завтра стартует первый вебинар по Машинному обучению — полный набор для выхода из Матрицы.
Кто готов вырваться из симуляции и ворваться в сезон найма?
👾 — я уже в команде Нео
👍 — хочу красную таблетку
🤔 — пока думаю, но интересно
👉 Забронируй место сейчас
В продакшн-сервисе на Python вы замечаете постепенный рост потребления памяти (memory leak). Как будете искать и устранять проблему?
Соберу метрики памяти и сниму heap dump с помощью tracemalloc, objgraph или memory_profiler. Проверю, нет ли висящих ссылок (глобальные коллекции, кэш, циклические ссылки). Если виноваты сторонние библиотеки — обновлю или изолирую. Для оптимизации — внедрю лимиты, пулы объектов, кеш с TTL и мониторинг утечек в CI/CD.
Библиотека собеса по Python
В продакшн-сервисе на Python вы замечаете постепенный рост потребления памяти (memory leak). Как будете искать и устранять проблему?
Соберу метрики памяти и сниму heap dump с помощью tracemalloc, objgraph или memory_profiler. Проверю, нет ли висящих ссылок (глобальные коллекции, кэш, циклические ссылки). Если виноваты сторонние библиотеки — обновлю или изолирую. Для оптимизации — внедрю лимиты, пулы объектов, кеш с TTL и мониторинг утечек в CI/CD.
Библиотека собеса по Python
⚡️ Будь как этот гений с картинки — предлагай свои условия работодателю, а не наоборот!
Кто нужен?
Senior ML-Engineer с опытом работы более 6 месяцев в FAANG компаниях. Требование: разработать кросс-платформенное приложение-трекер зарплат с AI-распознаванием вакансий по резюме.Но если вы пока джун — я бы предложил: - Full-time контракт: 180к/мес после курса + опцион на карьеру в топ-компаниях - Либо фикс за проект: стань ML-инженером за 39к вместо 44к с промокодом LASTCALL 🔗 Старт 9 сентября
Что такое рефлексия?
Рефлексия — это возможность программы изучать и модифицировать свою структуру и поведение во время выполнения.
В отличие от интроспекции, которая позволяет получать информацию об объектах, рефлексия дает возможность изменять саму программу.
Основные возможности рефлексии в Python:
— Создание новых классов и объектов программно во время выполнения
— Изменение структуры класса в рантайме путем добавления/удаления атрибутов и методов
— Вызов методов по их именам, переданным в виде строк
— Создание прокси-объектов для перехвата вызовов функций и методов
Библиотека собеса по Python
🎮 КВЕСТОВАЯ ЛИНИЯ: «Путь Data Scientist'а»
⮕ Твой стартовый набор искателя данных:
Python — твое легендарное оружие (урон по багам +∞) Математика — твой базовый интеллект (влияет на понимание алгоритмов) Машинное обучение — твое дерево навыков (открывает новые способности)⚡️ АКТИВЕН ВРЕМЕННЫЙ БАФФ: «Щедрость наставника» Эффект: –30% к цене полного набора ДСника Было: 121.800 ₽ → Стало: 84.900 ₽ ☞ Что ждет тебя в этом квесте
— Получение артефактов: портфолио проектов и сертификаты— Прокачка от новичка до Senior Data Scientist— Босс-файты с реальными задачами из индустрии— Доступ к гильдии единомышленников📎 Забрать бафф Рассрочки: 3 мес | 6 мес | 12 мес
В высоконагруженном Python-сервисе вы замечаете, что CPU загружен слабо, но задержки обработки запросов постоянно растут. При анализе видно, что большая часть времени тратится на сетевые операции. Что может быть причиной и как это исправить?
Причина в том, что сервис выполняет блокирующие I/O-операции в потоках или синхронно. Для исправления нужно перейти на асинхронную модель (asyncio, uvloop), использовать асинхронные драйверы для работы с БД/HTTP и вынести тяжёлые операции в отдельный пул процессов или потоков.
Библиотека собеса по Python
😎 Сколько баллов набрали вы?
Голосуйте, какой у вас уровень разработчика:
😁 — 5-12 баллов (стажер)
👍 — 13-25 баллов (джуниор)
⚡️ — 26-40 баллов (джуниор+)
👏 — 41-60 баллов (миддл)
🔥 — 61-80 баллов (миддл+)
🎉 — 81-100 баллов (сеньор)
🤩 — 100+ баллов (тимлид)
Но вот в чем прикол — опытный разработчик набирает баллы не случайными косяками, а осознанными решениями.
👉 Научим, как быстро прокачаться от стажера до сеньора
В продакшн Django-приложении пользователи жалуются на «N+1 проблему» при выборках связанных объектов. Как вы будете диагностировать и устранять её?
Проверю SQL-запросы через django-debug-toolbar или логирование ORM. Если вижу множественные запросы для связанных моделей — перепишу код с использованием select_related (для ForeignKey/OneToOne) или prefetch_related (для ManyToMany/Reverse FK). При необходимости — вынесу тяжёлые выборки в кастомные SQL-запросы или оптимизирую структуру модели.
Библиотека собеса по Python
Переворачиваем календарь — а там скидки, которые уже закончились.
Но мы их вернули на последний день 🤔
До 00:00 третьего сентября (цены как до 1 сентября):
▪️ Математика для Data Science — 35.199 ₽ вместо 44.900 ₽
▪️ Алгоритмы и структуры данных — 31.669 ₽ вместо 39.900 ₽
▪️ Основы IT — 14.994 ₽ вместо 19.900 ₽
▪️ Архитектуры и шаблоны — 24.890 ₽ вместо 32.900 ₽
▪️ Python — 24.990 ₽ вместо 32.900 ₽
▪️ ML для Data Science — 34.000 ₽ вместо 44. 000 ₽
▪️ AI-агенты — 49.000 ₽ вместо 59.000 ₽
👉 Хватаем скидки из прошлого
P.S. Машину времени одолжили у дяди Миши
Что такое Django Rest Framework (DRF)?
Django Rest Framework — это фреймворк с открытым исходным кодом, основанный на Django, который позволяет быстро создавать RESTful API.
Кстати, у нас есть курс по машинному обучению для старта в Data Science: https://proglib.academy/machine-learning
Библиотека собеса по Python
В Python-сервисе под нагрузкой заметно растёт время отклика. Профилирование показывает, что большая часть времени тратится на сериализацию и десериализацию JSON. Как вы будете искать и устранять проблему?
Сначала проверю профилером “горячие места” сериализации (cProfile, line_profiler). Для оптимизации можно заменить стандартный модуль json на более быстрые реализации (ujson, orjson), использовать pydantic/датаклассы с валидацией только там, где это нужно, или кэшировать результаты сериализации для часто используемых структур.
Библиотека собеса по Python
ПОСЛЕДНИЙ ДЕНЬ❗
КУРСЫ ПОДОРОЖАЮТ ЗАВТРА‼️
— ML за 34к вместо 44к + Python в подарок
— Математика → второй доступ в подарок
— Ранний доступ к AI-агентам с 15 сентября
— И МОЖНО УСПЕТЬ КУПИТЬ ВСЁ ДО ПОДОРОЖАНИЯ
👉 Proglib Academy
В высоконагруженном Python-сервисе время отклика начинает расти при увеличении числа потоков, хотя CPU используется не полностью. В чём может быть причина и как это исправить?
Причина в GIL: в Python одновременно выполняется только один поток байткода, поэтому многопоточность не даёт прироста для CPU-bound задач. Решение — использовать multiprocessing/ProcessPoolExecutor или вынести вычисления в C-расширения/NumPy.
Библиотека собеса по Python
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
