top of page

performance engineering

Practice writing fast software. Learn to do it right.

старт:

9 груд. 2025 р.

25 занять + 6 QA сесій

350 $/міс

про курс

Алгоритміка заклала фундамент мислення, тепер настав час зазирнути ще глибше. Адже хороші програмісти знають інструменти, що використовують, а найкращі з них можуть мислити про виконання програми на різних рівнях — від мови програмування до операційної системи та процесора. Ці знання дозволяють знаходити вузькі місця в коді, писати швидкі, коректні, надійні асинхронні та багатопоточні програми, приймати правильні архітектурні рішення.

Курс є важливим кроком перед подальшим вивченням Compilers, Databases та Operating Systems і потребує знань з Aлгоритмів.

навчальний план
буде гаряче

  • Найпопулярніші техніки оптимізації алгоритмів
  • Sentinel та як він дозволяє пришвидшити код
  • Чи всі інструкції CPU однаково швидкі?
  • Як Twitter та Facebook пришвидшили продакшн код в 100 разів
  • Оптимізації наносекунд в High-frequency trading (HFT) компаніях
  • Реалізація віртуальної машини як Java Virtual Machine (JVM)
  • Python vs C. У скільки разів та чому Python сповільнює код?

CPU

Техніки оптимізації наносекунд в HFT компаніях.

  • Пришвидшення продакшн-коду за рахунок memory hierarchy
  • OOP мертвий. Хай живе Data-Oriented Design
  • Нюанси написання сache-friendly алгоритмів та структур даних
  • Кеш операційної системи та вплив на реалізацію File I/O
  • Інструменти для вимірювання cache performance

Cache

Нюанси написання сache-friendly алгоритмів та структур даних.

  • Bitmap-індекси в базах даних
  • Деталі представлення та роботи з типами int, float, string
  • Як влаштований variable length int під капотом у Protobuf?
  • Unicode або як Twitter обмежує розмір твіта?​
  • Bit hacks

А Bit about Bytes

Представлення даних на рівні окремих бітів та байтів.

  • Реалізуємо Memory allocator та Garbage collector
  • Alignment даних. Вплив на пам'ять та швидкодію
  • Тонкощі реалізації структур даних в продакшн
  • Сегменти пам'яті. Як влаштований Stack і Heap

Memory

Реалізуємо Memory allocator та Garbage collector.

  • Пришвидшення за рахунок Instruction-level parallelism (ILP)
  • Використання SIMD та Branch prediction на прикладах
  • Вступ до асемблеру. Навчимося писати та читати прості програми
  • Reverse-engineering

Low-level optimizations

Оптимізації коду на рівні компілятору та заліза.

  • Як влаштована Virtual Memory та Page Tables під капотом
  • Як працюють System calls та context switches ​
  • Key features OS provide for users
  • How Page Faults can dramatically affect performance?

Operating system

Основні задачі ОС та її вплив на швидкодію.

  • Реалізуємо свій Shell
  • Fork + Exec
  • Як досягається координація між процесами через pipe

Processes

Напишемо свій Shell для координації роботи процесів.

  • Threads vs. Processes vs. Coroutines: погляд зсередини
  • Реалізуємо Event loop
  • Synchronization objects та Data races. Як реалізувати м'ютекс?
  • Напишемо Thread pool та виправимо багато конкурентних багів

Multithreading and Concurrency

Від потоків до написання власного EventLoop.

читає

Іван Петрушенко

Engineering Lead y @SQUAD, Founder в @CS Osvita. 
Former: @Dell Software Engineer, @Fiverr Senior Software Engineer, @Ring Machine Learning Engineer.

Реєстрація. Перший крок за вами

реєстрація
перший крок за вами

Я приймаю умови Публічної оферти та надаю згоду на обробку своїх персональних даних відповідно до Політики конфіденційності.

відгуки
що говорять випускники

Software Engineer @Meta

Владислав Каплун

Під час проходження курсу отримав неабияке задоволення від структурованого підходу. Куратор вражає вмінням доступно та розгорнуто подавати інформацію. Отримані знання з курсу також мають практичний застосунок у моїй роботі, що підкреслює цінність отриманої освіти.

ML Lead @Facebook

Саша Савсуненко

Буде цікаво та складно, всім хайлі рекомендед! Курс допоміг мені швидше розібратись з складним кодом на новому проекті, зрозуміти структури даних та оптимізації, що використовуються. Ці речі має знати кожен програміст.

Software Engineer @Microsoft

Валентин Бочкарьов

Під час підготовки до інтерв‘ю у FAANG проходив курс Algorithms in Practice, а згодом і Performance Engineering. Зараз я з впевненістю можу сказати, що обидва курси допомогли мені отримати оффер від Oracle та Microsoft.

Head Of Engineering @Artur'In

Віталій Маковський

Це був один з найвражаючих навчальних досвідів у моєму житті. Викладач зумів передати глибокі знання з предмета і зробив цей процес захоплюючим. Під час навчання ви випробуєте себе і, що не менш важливо, познайомитесь з цікавими людьми.

Software Engineer @Meta

Роман Перегончук

Курс просто супер! Це дуже класний спосіб отримати нові знання, познайомитись з цікавими людьми і як бонус підготуватись до технічних інтерв'ю. Одна з моїх найкращих інвестицій, можу рекомендувати всім!

Software Engineer @Meta

Назарій Іванчук

Я отримав справжнє задоволення від вивчення таких фундаментальних тем, як оптимізація алгоритмів та робота з кешем. Особливо цінними виявилися розділи про підвищення ефективності на рівні CPU та пам'яті. Завдяки чіткій і доступній подачі матеріалу, здобуті знання одразу знайшли практичне застосування.

Software Engineer @Amazon

Кирило Попирко

Курс дуже добре структурований: починається з високорівневих абстракцій і поступово заглиблюється в деталі. Приклади базуються на реальних проєктах; цікаві та практичні домашні завдання (навіть довелося знешкоджувати бомбу!). Вартує кожної хвилини і кожної вкладеної гривні.

Senior Software Engineer @SingleStore (formerly MemSQL)

В'ячеслав Очеретний

Дуже рекомендую цей курс і платформу загалом!

Software Engineer @Google

Ольга Войчик

Це були цікаві 3 місяці, протягом яких вдалося отримати та покращити свої знання з оптимізації коду, віртуальної пам'яті, та взаємодії процесів із операційною системою. Також хотіла б відзначити продумані домашні завдання — це була чудова нагода попрактикувати вивчене.

Software Engineer @Braiins Systems

Марк Фірман

Серед інших курсів немає аналогів за рівнем глибини та якості матеріалів. Це абсолютно унікальний досвід, який забезпечує глибше та практичне розуміння роботи комп'ютера.

Software Engineer @Amazon

Ярослав Бородаєнко

Must-have для всіх, хто прагне заглибитись у нутрощі сучасного комп’ютера: як працює його CPU, з чого складається пам’ять та як операційна система керує процесами. Ці знання дозволять виділитися як на технічних інтерв’ю, так і під час код-рев’ю, надаючи корисні поради. Курс добре структурований і включає нетривіальні домашні завдання. Окреме задоволення приносить аналіз кейсів оптимізацій у кодових базах Facebook та Twitter.

Software Engineer @Google

Ярослава Сердюк

Курс дав глибоке розуміння теми. Було цікаво й пізнавально. Дуже тішить, що такі ініціативи розвиваються в Україні. Щиро рекомендую!

Senior Software Engineer @OpenText

Павло Суріков

This course offers an in-depth exploration of the low-level mechanics behind modern operating systems and CPU architectures, covering topics like caching, memory management, instruction-level performance, processes, multithreading, and concurrency.
I highly recommend it to developers who want to move beyond abstractions and learn to write optimized code grounded in a strong understanding of system internals.

Senior Software Engineer @ Lalafo

Святослав Піх

Особливо сподобався підхід до викладання, коли мене спонукали самому знаходити відповідь маленькими кроками. Завдяки цим курсам я відкрив для себе, як можна продовжувати навчання вже на рівні Senior. А живе спілкування на лекціях виявилося значно ефективнішим, ніж перегляд записаних відео на Udemy, Coursera чи YouTube.

що на вас чекає
have fun and dive deep

оточення, яке заряджає

Проводимо відбір, щоб ви навчалися в середовищі сильних і вмотивованих.

Домашки — це не просто задачки. Це справжні міні-проєкти, максимально наближені до продакшену. Оптимізація, дедлайни, баги, фідбек, рефакторинг — усе як у реальному житті. Писатимете багато, місцями дуже багато коду: Python, Java, Go, Assembly, C++. Без лірики — тільки хардкор.

Лектор завжди на зв’язку — пояснить, доки не стане зрозуміло. Іноді це третя ітерація code review, іноді — залишаємося після лекції, щоб розібратись разом. Це нормально — ми тут, щоб вчитись і ставати сильнішими.

комунікація, яка тримає в тонусі

Зустрічаємось у Zoom двічі на тиждень — щовівторка і щоп’ятниці о 18:30. Лекції тривають 1.5 години, кожна записується, тож ви завжди зможете передивитися матеріал у зручний час. Також регулярно проводимо додаткові Q&A-сесії з лектором. Мова викладання — українська. Додаткові матеріали — англійською.

Slack — наш спільний простір. Тут обговорюємо задачі, ділимось підказками, пишемо хитрі тести й обговорюємо реферали в топ-компанії.

формат, який працює

Постійний зворотний зв’язок у Slack, на лекціях і QA-сесіях — ми завжди поруч.

Жодних поверхневих слайдів: тільки глибокий розбір цікавих задач із реального продакшену.

Сертифікат видаємо лише за реальні результати — виконані домашки, участь у дискусіях, відчутний прогрес.

bottom of page