Python Advanced
Master Python from the inside out
350 $/місяць
пн / пт, 18:30 (UTC+3)
старт:
17 серп. 2026 р.
16 занять, 2 місяці
350 $/місяць
пн / пт, 18:30 (UTC+3)

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

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