python advanced
Master Python from the inside out
старт:
23 бер. 2026 р.
16 занять, 2 місяці
350 $/місяць
пн / пт, 18:30 (UTC+2)
350 $/місяць
пн / пт, 18:30 (UTC+2)
про курс
Python швидкий настільки, наскільки добре ви розумієте, що відбувається під капотом. На цьому курсі ми відкриємо те, що зазвичай приховано: модель памʼяті CPython, PyObject, алокації та фрагментацію, GIL і конкурентність потоків, multiprocessing, async та zero-copy підходи. Ви навчитеся не «припускати», а міряти, профілювати й оптимізувати. Ви переконаєтесь, що робота з пам’яттю чи потоками — це не дрібниці, а фундамент, що визначає швидкість, стійкість та вартість вашої системи.
Цей курс переводить розробника у категорію those who understand Python beneath Python — інженерів, що контролюють поведінку інтерпретатора, вміють будувати scalable-рішення, зменшувати latency та споживання RAM, писати код стійкий до високих навантажень. Результат — відчутний приріст продуктивності програм і повний контроль над тим, як вони працюють зсередини.
Програма не для пасивного перегляду, а для глибокої роботи: дослідження, експерименти, оптимізація й, можливо, переписування того, що здавалося правильним роками.
навчальний план
буде гаряче
Внутрішня обʼєктна модель CPython: PyObject, reference counting, роль GC
Рівні керування памʼяттю: heap, arenas, pools, blocks та логіка роботи pymalloc
Типові патерни надлишкових алокацій і фрагментації памʼяті в Python-коді
Інструменти вимірювання та діагностики: tracemalloc, gc, sys.getsizeof, практичні техніки аналізу
Практика:
Написання коду без зайвих алокацій
Як Python керує памʼяттю
Як влаштована памʼять в CPython і чому це має значення для продуктивності
Поверхневе, глибоке та приховане копіювання: де Python створює нові обʼєкти
Фрагментація памʼяті: причини виникнення та накопичення
Вплив копіювання та фрагментації на споживання памʼяті та стабільність системи
Що використовувати замість копій: робота з посиланнями та view-підходи (генератори, слабкі посилання, слоти, іменовані кортежі, датакласи)
Практика:
Реалізація Copy-On-Write масиву, аналіз прихованих алокацій, профілювання памʼяті
Копіювання та фрагментація памʼяті
Як непомітні ко пії та алокації впливають на споживання памʼяті та стабільність програм
Векторизація та відмова від Python-циклів NumPy і альтернативи: PyArrow, JAX — сценарії використання
Zero-copy підхід: buffer protocol, memoryview, mmap — робота з даними без копій
Компіляція та JIT-оптимізація: Cython, Numba. Коли це виправдано, а коли ні
Практика:
Робота з байтовими даними без копій, вибір оптимального підходу обробки даних під конкретну задачу
Швидкодія за межами Python
Коли інтерпретатора вже недостатньо і які підходи дозволяють масштабувати продуктивність
Локальні та зовнішні кеші (in-memory vs Redis): коли який підхід доречний
Типові помилки кешування: застарілі дані, cache stampede, неконтрольоване зростання
Політики cache-eviction (LRU, LFU, TTL) і їх вплив на памʼять та hit-rate
Підходи до вибору розміру кешу: компроміс між споживанням памʼяті, швидкодією та стабільністю
Практика:
Вибір підходу під задачу, реалізація LRU-кешу, аналіз впливу кешу на продуктивність і поведінку алгоритму
Стратегії кешування
Від локального кешу до багаторівневих стратегій з Redis
Роль GIL у CPython та його вплив на продуктивність
Перемикання потоків: як Python поводиться з I/O-bound та CPU-bound задачами
Взаємодія GIL з планувальником потоків і сигналами
Реалізація GIL: мʼютекси, семафори, умовні змінні pthreads
Практика:
Вибір стратегії виконання та пояснення результатів з урахуванням впливу GIL
GIL та багатопоточність
Як Global Interpreter Lock визначає меж і паралельності в CPython
Як та чому виникають гонки потоків
Примітиви синхронізації: mutex, lock і їхній вплив на продуктивність
Потокобезпечна взаємодія через черги та обмін даними
Координація потоків: Semaphore, Event, Condition
Вибір кількості потоків: компроміс між паралельністю та накладними витратами
Практика:
Реалізація багатопоточного log collector, реалізація thread-safe структур
Синхронізація та безпечна робота з потоками
Як уникати гонок, блокувань і нестабільної поведінки у багатопоточному коді
Моделі запуску процесів: fork, spawn
Обмін даними між процесами: черги, пайпи, shared memory
IPC та координація процесів
Вибір кількості процесів: баланс між продуктивністю та можливостями процесора
Практика:
Централізація логування, паралельні обчислення та спільний доступ до даних із використанням IPC і shared memory
Багатопроцесність
Як обходити обмеження GIL і масшт абувати CPU-bound задачі через процеси
Корутинна модель та event loop: як досягається конкурентність
Очікування та координація задач: await, gather, task groups
Типові помилки асинхронного коду: блокування loop, race conditions, витоки памʼяті
Зелені потоки та інші альтернативи
Практика:
Оркестрація задач з використанням семафору, вибір стратегії паралельності/конкурентності для різних типів задач
Асинхронність
Як працює асинхронна модель виконан ня і де вона ламається в реальних системах
читає

Світлана Сумець
Senior Python Software Engineer @N-iX
Експертка з високонавантажених систем та сертифікована AWS-архітекторка. Проєктує масштабовані low-latency рішення та складні інтеграції для глобальних корпорацій
Реєстрація. Перший крок за вами
реєстрація
перший крок за вами
Я приймаю умови Публічної оферти та надаю згоду на обробку своїх персональних дан их відповідно до Політики конфіденційності.
відгуки
що говорять випускники
що на вас чекає
have fun and dive deep
інтенсивний режим
Зустрічаємось у Zoom двічі на тиждень — щопонеділка і щопʼятниці о 18:30. Щотижня — нова домашка.
Усі лекції — це живі зустрічі з викладачем під запис (щоб повернутися до матеріалу пізніше). Регулярно проводимо додаткові Q&A-сесії з викладачем та тримаємо з вами звʼязок в Slack.
Мова викладання — українська.
Додаткові матеріали — англійською.
спільнота крутих людей
Проводимо відбір на курс, щоб ви навчалися поряд із сильними та вмотивованими. Навіть відраховуємо за незараховані домашки.
Викладач готовий працювати з вами, поки все не стане на свої місця. Іноді це третя ітерація code review, іноді — додатковий 1-1 на 15 хвилин. Ми тут, щоб вчитись і ставати сильнішими.
А ще щоб жартувати про своє в Slack та обмінюватися рефералами в круті компанії.
результат, який має сенс
Тут не буде поверхневих слайдів та довгих вступів: тільки глибокий розбір цікавих задач із реального продакшену.
Сертифікат видаємо не за відвідування, а за результати — виконані домашки, участь у дискусіях, відчутний рух та прогрес.