top of page

performance engineering

Practice writing fast software. Learn to do it right.

start:

Aug 20, 2025

3 місяці. 25 занять + 6 QA сесій. вт, пт — 18:30

350 $/міс

10% goes to the Armed Forces of Ukraine

about the course

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

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

curriculum
things will get hot

  • Найпопулярніші техніки оптимізації алгоритмів
  • 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.

read by

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

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

Register. The first step is yours.

register
the first step is yours

Вітаємо, перший крок до курсу зроблено! 

I accept the terms of the Public Offer and consent to the processing of my personal data in accordance with the Privacy Policy.

reviews
What graduates say

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.

What awaits you?
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