The Backend Engineering Show with Hussein Nasser cover image

The Backend Engineering Show with Hussein Nasser

Latest episodes

undefined
May 5, 2020 • 12min

My Preferred Method of Learning Backend Engineering Technologies Fast

In this video I want to talk about my preferred method of learning backend engineering technologies, I prefer podcasts and youtube videos some people prefer books. My First Programming Book My Problem with Learning in Books My Preferred Method of learning (Podcasts) YouTube Videos Problem is Biased .. Details in WIkipedia then Recommended Podcasts https://softwareengineeringdaily.com/ https://www.dataengineeringpodcast.com/ https://changelog.com/podcast Recommended YouTube Channels https://www.youtube.com/user/TechGuyWeb https://www.youtube.com/user/99baddawg https://www.youtube.com/channel/UCRPMAqdtSgd0Ipeef7iFsKw https://www.youtube.com/channel/UCn1XnDWhsLS5URXTi5wtFTA
undefined
May 1, 2020 • 13min

What is a Message Queue and When should you Queues?

Message Queues system like RabbitMQ and Kafka are amazing technologies but when should you actually use a message queue? I discuss this in this video.
undefined
May 1, 2020 • 10min

RabbitMQ Channels, HTTP/2 Streams and How QUIC can fix the limitation Message Queues

In this video I talk about RabbitMQ Channels compared to HTTP/2 Streams and how QUIC helps mitigate some of the major limitations in Channels and Streams. Chapters 0:00 Intro 0:10 RabbitMQ Channels 3:10 HTTP/2 Streams 6:00 How QUIC Helps
undefined
Apr 29, 2020 • 13min

Can QUIC Protocol be used as in Databases ? Web Application Database Pooling, head of line blocking and more

In this video I discuss why QUIC will make a great communication protocol for databases and how it solves a critical problem with stateless web applications. Web applications uses database connection pooling to establish database connections on the backend. But that creates other sorts of problems. Timecodes 0:00 Intro 0:20 Database Communication Protocols 2:00 Problem with Sharing Database Connections 6:50 How QUIC streams can help Databases
undefined
Apr 28, 2020 • 21min

When should you shard your database?

Database Application level sharding is the process of splitting a table into multiple database instances in order to distribute the load. However, Sharding a database is an expensive operation (maintainability and overhead) and I suggest you do that only when you absolutely need to. That means when your single instance database can no longer serve queries with minimum latency. So I suggest you monitor that and only shard if necessary.. I rather do replication make master / backup and make requests read from replica than Sharding just because it is easier.. good question... nice idea for a video 5:00 Partition horizontally 7:45 Replication (Master/backup) Scale reads 11:00 Scale writes by region 12:30 Sharding 16:40 Sharding in YouTube
undefined
Apr 25, 2020 • 23min

Advice for Junior backend engineers who just started new jobs

In this video I give some advice to junior backend engineers who just started their new jobs and feel overwhelmed. Backend engineering jobs can be overwhelming at the start, there are so much to learn, so much to read, documentation, tests, code in multiple programming languages. Here are some advice for Junior backend engineers. 0:00 Intro 1:20 Take your time 6:05 Stay hungry keep learning 8:36 Assume your collages know something you don’t 12:42 Don’t bad mouth other people code even if its bad 17:19 Question everything
undefined
Apr 23, 2020 • 3min

Why System Design and Architecture is an Art ?

Creating a software design is an art here is why 
undefined
Apr 22, 2020 • 11min

What makes a good Software Tester?

Qualities of a good software tester: understanding the system being tested, strong troubleshooting skills, finding unexpected bugs. Approaches to bug finding: investigating underlying cause, using proxies, identifying UX bugs. Importance of testing and how to excel: dig deeper into server and database, analyze CPU and database performance.
undefined
Apr 19, 2020 • 57min

JSON Web Token

JSON Web Token (JWT, sometimes pronounced JOT) an internet standard for creating JSON-based access tokens that assert some number of claims. The tokens are signed either using a private secret or a public/private key. In this video I want to discuss the difference between JWT and Session Based Auth, will show examples with Node JS and Postgres. Finally I’ll discuss the pros and cons of JWT.
undefined
Apr 12, 2020 • 16min

Main Difference between Asynchronous, Multithreading and Multiprocessing Programming

This podcast explores the main differences between synchronous execution, multithreading, and multiprocessing programming. It discusses the advantages and disadvantages of each approach and touches on topics like thread blocking, asynchronous execution, thread safety, inter-process communication, and problem-solving among multiple processes.

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app