
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

7 snips
May 30, 2020 • 19min
How Does Database Store Tables on Disk? Explained both SSD & HDD
This podcast explores how databases store tables on disk, discussing the allocation of bytes, unique identifiers, and retrieval of multiple rows. It also compares solid-state drives (SSDs) and hard disk drives (HDDs) in terms of performance and lifespan. The challenges of inserting and updating data in SSDs are addressed, along with the introduction of LSM trees as a solution for rebalancing B-trees on SSDs.

May 26, 2020 • 5min
Understand Fundamentals not Tools (e.g. WebSockets vs Socket.io, Javascript vs React, Python vs Django)
This podcast discusses the lack of fundamentals in engineering and the confusion between core technologies and tools. It emphasizes the importance of understanding how WebSockets work and the inner workings of tools and frameworks in backend and frontend development. It also explores the debate between Socket.IO and WebSockets and highlights the value of deep knowledge in one's specialization.

May 25, 2020 • 12min
How to Spot Good Software Documentations from Really Bad one?
In this video I discuss all about software documentation.Good doc from bad doc and how to differentiate and is documentation the only source of learning about a particular tech?

May 24, 2020 • 8min
7 Tips To Optimize Your Backend API (Without Caching)
In this podcast I discuss 7 Tips To Optimize Your Backend API (Without Caching)
1) The serialization representation (XML/JSON, pbf) 0:40
2) Preheating connections
3) H1 vs H2
4)TCP meltdown (big distance)
5) Proxies
6) large payload (select * )
7) Client side processing (transfomring the work)

May 20, 2020 • 15min
10 FrontEnd Performance Tips To Improve Your Application (Any Programming Language)
In this video, I would like to discuss 10 performance tweaks and tips that you can apply to your frontend application to improve its performance and efficiency. These tips are applicable to any programming language on Web, mobile, or desktop application. Chapters 0:00 Intro 0:40 Optimistic queries 1:57 Paging 3:00 Lazy Loading 4:00 Request what you Need 6:53 Connection State 10:00 LRU Cache 11:10 Group Notifications 12:30 Avoid Expensive Queries Even At Expense of Bad UX 14:00 Design your UX So you Minimize Requests

May 19, 2020 • 16min
Agile vs Waterfall Software Development Methodology Explained
In this video I explain the difference between Agile & Water, the pros & cons and more.
Chapters
0:00 Intro
1:00 Waterfall
5:00 Agile

May 13, 2020 • 9min
How WebSockets Work with HTTP/2 (RFC8441 Explained)
In this video I explain how WebSockets work in the new HTTP/2 protocol. This is explained in the Bootstrapping WebSockets with HTTP/2 in RFC8441 https://tools.ietf.org/html/rfc8441 https://link.medium.com/v5sB9nbUp6 1:00 HTTP2 5:50 HTTP/2 limitations

May 11, 2020 • 11min
Machine Learning Occupancy Detection System being deployed in California
Metroexpress lane is implementing a Machine Learning Occupancy Detection System which I found interesting. In this video I discuss machine learning, supervised learning, labeling and much more.

May 9, 2020 • 8min
What is a Multitenancy Architecture and Why Is it becoming popular?
In this video I explain the multi-tenancy architecture. The basic idea is to have a single instance of your application to serve multiple tenants or customers and the properties are this. This is as opposed to isolated or dedicated infrastructure.
Shared Instance
One database hosting multiple customers
Isolation at the application level
Can be multi-processes and multi-instances as long as they are pooled
Stateless
Tags
Multitenancy, software Multitenancy, Multitenancy explained, Multitenancy architecture
https://www.zdnet.com/article/defining-the-true-meaning-of-cloud/

May 9, 2020 • 13min
How Important are algorithm and data structures in backend engineering?
Algorithms & Data Structures are critical to Backend Engineering however it really depends on what kind of application and infrastructure you are building. In this video I want to go through the following 1 Backend Engineers are two types - Integrating Existing Backend - Core Backend Example Building a CRUD API? Online Cinema system, URL shortener, You will pick up a database and write your logic Building a social network? * are you gonna be integrator use a ready made graph database? * Are you gonna use a off the shelf database and write your logic in the application? * Are you gonna build your own graph database platform? * Any of these scenarios you will run into problems slow performance and you need to understand why Building a monitoring system? are you gonna integrate an existing database ? or build your own? 2. Be Pragmatic (Algorithms are not always the solution) * Most performance issues are not algorithm problems, they are just bad bugs. and misuse .. paging We are a sorted 100 items takes 1 minute to sort and return.. merge sort or heap or quick sort won’t help you 3. Always keep learning to be open to learn new Algorithms