
The Backend Engineering Show with Hussein Nasser
Welcome to the Backend Engineering Show podcast with your host Hussein Nasser. If you like software engineering you’ve come to the right place. I discuss all sorts of software engineering technologies and news with specific focus on the backend. All opinions are my own.
Most of my content in the podcast is an audio version of videos I post on my youtube channel here http://www.youtube.com/c/HusseinNasser-software-engineering
Buy me a coffee
https://www.buymeacoffee.com/hnasr
🧑🏫 Courses I Teach
https://husseinnasser.com/courses
Latest episodes

Feb 29, 2024 • 16min
Database Torn pages
Exploring torn pages in databases, including Oracle and MySQL solutions. Comparison of file system block and database pages. Postgres full page writes.

7 snips
Feb 28, 2024 • 31min
Cloudflare Open sources Pingora (NGINX replacement)
Cloudflare's release of Pingora, a networking framework, is a game-changer in the industry. Discussion revolves around its security features, multi-threading capabilities, and the balance between customization and configuration. The move towards Rust for network services marks a significant shift for Cloudflare.

Feb 19, 2024 • 45min
The Internals of MongoDB
Explore the evolution of MongoDB's internal architecture, from document storage to index representation. Learn about page sizes in MongoDB, MySQL, and PostgreSQL. Delve into the importance of efficient disk I/O and backend engineering fundamentals. Discover the transition to document-oriented storage and cluster B-tree indexing in MongoDB, comparing it with other DBMS.

Feb 19, 2024 • 18min
The Beauty of Programming Languages
In this video I explore the type of languages, compiled, garbage collected, interpreted, JIT and more.

Feb 18, 2024 • 12min
The Danger of Defaults - A PostgreSQL Story
Exploring the impact of default values in PostgreSQL 14, discussing performance regression caused by default parameter changes. Insights into tuple representation, vacuum process, and index cleanup improvements in Postgres 14. Importance of understanding default values to avoid unexpected consequences in backend engineering.

Feb 16, 2024 • 9min
Database Background writing
Background writing is a process that writes dirty pages in shared buffer to the disk (well goes to the OS file cache then get flushed to disk by the OS) I go into this process in this video

Jan 29, 2024 • 39min
The Cost of Memory Fragmentation
The podcast discusses the concept of memory fragmentation and its impact on performance. It explores the structure of DDR RAM and the cost of accessing different rows. The podcast also delves into the use of virtual memory and the challenges of TLB mess. It highlights the cost of memory fragmentation and retrieval and the differences between hard drive and RAM access.

Dec 13, 2023 • 13min
The Real Hidden Cost of a Request
Explore the hidden costs of sending a request from the frontend to the backend, including performance implications and challenges in determining backend capacity. Dive into the intricacies of handling requests in the backend, such as establishing connections, data decryption, parsing requests, and hidden complexities. Understand the process of parsing and decoding a request in backend engineering, including challenges with binary protocols, the cost of serialization and deserialization, importance of byte representation, and potential for splitting CPU-heavy tasks.

Oct 28, 2023 • 13min
Why create Index blocks writes
Fundamentals of Database Engineering udemy course (link redirects to udemy with coupon)
https://database.husseinnasser.com
Why create Index blocks writes
In this video I explore how create index, why does it block writes and how create index concurrently work and allow writes.
0:00 Intro
1:28 How Create Index works
4:45 Create Index blocking Writes
5:00 Create Index Concurrently

Oct 5, 2023 • 14min
The Problems of an HTTP/3 Backend
The podcast discusses the increasing popularity of HTTP/3, compares it to HTTP/1 and HTTP/2 in terms of cost, and explores the differences in working with HTTP1 and HTTP2 in the backend. The variances between HTTP, HTTP2, and QUIC protocols are also explored, along with the structure and potential of HTTP/3.