performance engineering
Practice writing fast software. Learn to do it right.
start:
Apr 3, 2026
25 classes + 6 Q&A sessions
350 $/mo
online
350 $/mo
online
what's inside
Algorithms laid the foundation for engineering thinking — now it's time to go deeper. Good programmers know the tools they use, but the best ones can reason about program execution at multiple levels — from the programming language down to the operating system and processor. This knowledge lets you identify bottlenecks in code, write fast, correct, and reliable asynchronous and multithreaded programs, and make sound architectural decisions.
This course is an essential step before diving into Compilers, Databases and builds on what you learned in Algorithms.
curriculum
prepare yourself
The most popular algorithm optimization techniques
Sentinel and how it helps speed up code
Are all CPU instructions equally fast?
How Twitter and Facebook made production code 100x faster
Nanosecond optimizations in High-frequency trading (HFT) companies
Implementing a virtual machine as a Java Virtual Machine (JVM)
Python vs C. How many times and why does Python slow down code?
CPU
Nanosecond optimization techniques in HFT companies.
Acceleration of production code due to memory hierarchy
OOP is dead. Long live Data-Oriented Design
Nuances of writing cache-friendly algorithms and data structures
Operating system cache and its impact on File I/O implementation
Tools for measuring cache performance
Cache
Nuances of writing cache-friendly algorithms and data structures.
Bitmap indexes in databases
Details of representation and operation with int, float, string types
How does the variable length int work under the hood in Protobuf ?
Unicode or how does Twitter limit the size of a tweet?
Bit hacks
A Bit about Bytes
Representation of data at the level of individual bits and bytes.
We implement Memory allocator and Garbage collector
Data Alignment. Impact on Memory and Performance
The subtleties of implementing data structures in production
Memory segments. How the Stack and Heap are arranged
Memory
We implement a Memory allocator and Garbage collector.
Speedup through Instruction-level parallelism (ILP)
Using SIMD and Branch prediction with examples
Introduction to assembly language. Learn to write and read simple programs
Reverse engineering
Low-level optimizations
Code optimizations at the compiler and hardware level.
How Virtual Memory works and Page Tables under the hood
How System calls and context switches work
Key features OS provides for users
How Page Faults can dramatically affect performance?
Operating system
The main tasks of the OS and its impact on performance.
We are implementing our Shell
Fork + Exec
How coordination between processes is achieved through pipes
Processes
Let's write our own Shell to coordinate the work of processes.
- Threads vs. Processes vs. Coroutines: an inside look
- We implement Event loop
- Synchronization objects and Data races. How to implement a mutex?
- We will write a Thread pool and fix many concurrency bugs
Multithreading and Concurrency
From threads to writing your own EventLoop.
instructor:

Ivan Petrushenko
Engineering Lead y @SQUAD, Founder в @CS Osvita.
Former: @Dell Software Engineer, @Fiverr Senior Software Engineer, @Ring Machine Learning Engineer.
Ready? Take the first step
ready?
take the first step
I accept the terms of the Public Offer Agreement and consent to the processing of my personal data in accordance with the Privacy Policy.
reviews
what alumni say

Software Engineer @Meta
Vladyslav Kaplun
While taking the course, I received great satisfaction from the structured approach. The curator impresses with his ability to present information in an accessible and detailed manner. The knowledge gained from the course also has practical application in my work, which emphasizes the value of the education received.

ML Lead @Facebook
Sasha Savsunenko
It will be interesting and difficult, highly recommended to everyone! The course helped me to quickly understand complex code on a new project, understand the data structures and optimizations used. These are things every programmer should know.

Software Engineer @Microsoft
Valentyn Bochkarov
While preparing for the interview at FAANG, I took the Algorithms in Practice course, and later Performance Engineering. Now I can confidently say that both courses helped me get offers from Oracle and Microsoft.

Head Of Engineering @Artur'In
Vitalii Makovskyi
It was one of the most impressive learning experiences of my life. The teacher was able to convey deep knowledge of the subject and made the process exciting. During the study, you will challenge yourself and, equally important, meet interesting people.

Software Engineer @Meta
Roman Peregonchuk
The course is just great! It's a really cool way to gain new knowledge, meet interesting people, and as a bonus, prepare for technical interviews. One of my best investments, I can recommend it to everyone!

Software Engineer @Meta
Nazarii Ivanchuk
I really enjoyed learning about fundamental topics like algorithm optimization and caching. The chapters on improving CPU and memory efficiency were especially valuable. The material was presented in a clear and accessible way, and the knowledge I gained was immediately applicable.

Software Engineer @Amazon
Kyrylo Popyrko
The course is very well structured: it starts with high-level abstractions and gradually delves into details. Examples are based on real projects; interesting and practical homework assignments (I even had to defuse a bomb!). Worth every minute and every hryvnia invested.

Senior Software Engineer @SingleStore (ex MemSQL)
Viacheslav Ocheretnyi
I highly recommend this course and the platform in general!

Software Engineer @Google
Olha Voichyk
It was an interesting 3 months, during which I managed to gain and improve my knowledge of code optimization, virtual memory, and process interaction with the operating system. I would also like to note the thoughtful homework assignments — it was a great opportunity to practice what I learned.

Software Engineer @Brains Systems
Mark Firman
The depth and quality of the materials are unmatched by any other course. It is a truly unique experience that provides a deeper and more practical understanding of how computers work.

Software Engineer @Amazon
Yaroslav Borodaienko
A must-have for anyone who wants to delve into the ins and outs of a modern computer: how its CPU works, what memory is made of, and how the operating system manages processes. This knowledge will allow you to stand out both in technical interviews and during code reviews, providing useful advice. The course is well-structured and includes non-trivial homework assignments. The analysis of optimization cases in the Facebook and Twitter code bases is a particular pleasure.

Software Engineer @Google
Yaroslava Serdiuk
The course gave a deep understanding of the topic. It was interesting and informative. It is very gratifying that such initiatives are developing in Ukraine. I sincerely recommend it!

Senior Software Engineer @OpenText
Pavlo Surikov
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
Sviatoslav Pikh
I especially liked the teaching approach, where I was encouraged to find the answer myself in small steps. Thanks to these courses, I discovered for myself how to continue learning at the Senior level. And live communication during lectures turned out to be much more effective than watching recorded videos on Udemy, Coursera, or YouTube.

Software Engineer @Google
Богдан Тищенко
This program covered advanced techniques in performance analysis and system optimization.
Based on the quality of the content and the expertise of the instructor, Ivan Petrushenko, I highly recommend this course to any professional seeking to master the nuances of performance engineering.
what awaits
have fun and dive deep
environment that energizes
We screen carefully — you'll learn among driven, motivated engineers.
Homework isn't exercises. These are real mini-projects mirroring production: optimization, deadlines, bugs, feedback, refactoring. You'll write serious code across Python, Java, Go, Assembly, C++. No fluff — pure engineering.
Your instructor won't leave you hanging. They explain until it clicks — third code review, staying late to debug, whatever it takes. We're here to push hard and level up.
communication that drives you
Twice weekly on Zoom — Tuesdays and Fridays at 6:30 PM, 1.5 hours each. All lectures recorded. Plus regular Q&A sessions with your instructor. Taught in Ukrainian. Supplementary materials in English.
Slack is our hub for discussions, clever test cases, and top company referrals.
format that works
Constant feedback in Slack, lectures, and Q&A — we're always connected.
No shallow slides — only deep dives into real production problems.
Certificates are earned: completed homework, active participation, tangible progress.