Fundamentals of Backend Engineering
OFF
DevelopmentBack End Web Development

Fundamentals of Backend Engineering

4.7
(51,191 students)
19h 30m

>_ What You'll Learn

  • Learn the fundamentals of backend engineering
  • Backend communication design patterns
  • Understand how backend communication protocols work
  • Comprehend how OS Kernel communicate with Backend Applications
  • Operating System fundamentals (Thread, Process, async IO in linux)
  • Learn HTTP/1.1, HTTP/2, HTTP/3
  • Learn gRPC, WebRTC, WebSockets
  • Learn TLS 1.2, TLS 1.3, QUIC 0RTT

>_ Requirements

  • Intermediate programming skills (1-2 years)
  • Having built a backend application
  • Basic network fundamentals

/ Course Details & Curriculum

**Backend engineering** is an art. During my 18 years career working with and building backend applications, I discovered that certain communication design patterns keep emerging. There are only handful of ways clients communicate with backend applications, although they might be more, I believe the patterns I discuss in this course are the most common. Examples of these patterns are request-response, publish-subscribe, short and long and push. Based on these communication design patterns, engineers may use a number of protocols for concrete communication. While core transport vehicles are limited to either TCP or UDP, tons of industry specific protocols are built on top of these two to address certain problems and use cases. Examples of these high level protocols are HTTP/1.1, HTTP/2, HTTP/3, gRPC, WebRTC and many more. Other transport protocols like QUIC was built on top of UDP to bring HTTP/2 streaming down at the transport level. Each protocol has its pros and cons and fits certain use cases. In the course, I discuss the top common protocols and provide examples and demos where applicable. Before the client can send a request, it has to establish a connection to the backend. Understanding how the connection is established, and what parts of connection establishment is done at kernel and what parts are done at the backend application process is critical. How the connection is then accepted by the backend application and how it can accept connections as fast as possible so the kernel queue doesn’t get full otherwise clients can no longer connect. After the connection is established the client sends the request, but what happens exactly in the backend application to read the request? What exactly is a request? Understanding the cost of parsing a request based on the protocol makes the engineer appreciate the work done and equip her with better tools to troubleshoot performance problems or bugs. Once the request reaches the backend, the application has to execute the request. The backend has a buffet of design choices when it comes to the style of execution it can choose. Understanding the difference between a process and a thread, multi-process, multi-threaded and the correlation to the number of CPU cores or hardware threads is crucial to pick the right execution pattern. One does not have to stick with these patterns but can invent new ones that suits their needs. This course is designed for engineers who have built backend applications, it is an intermediate — advance level course, certain programming and networking knowledge is required so I recommend taking my fundamentals of network engineering course before taking this course if you don’t have the networking skills. I hope you enjoy this course, and thank you so much for considering it.

Author and Instructor

H

Hussein Nasser

Expert at Udemy

With years of hands-on experience in Development, Hussein Nasser has dedicated thousands of hours to teaching and mentorship. This course is the culmination of industry best practices and a proven curriculum that has helped thousands of students transition into professional roles.

Community Feedback

M

Michael Chen

Verified Enrollment

"This Fundamentals of Backend Engineering course was exactly what I needed. The instructor explains complex Development concepts clearly. Highly recommended!"

S

Sarah Johnson

Verified Enrollment

"I've taken many Udemy courses on Development, but this one stands out. The practical examples helped me land a job."

D

David Smith

Verified Enrollment

"Great value for money. The section on Back End Web Development was particularly helpful."

E

Emily Davis

Verified Enrollment

"Excellent structure and pacing. I went from zero to hero in Development thanks to this course. Lifetime access is a huge plus."

Common Questions

Is the "Fundamentals of Backend Engineering" course truly discounted?
Yes. By utilizing our verified 92% coupon, you can enroll in "Fundamentals of Backend Engineering" at a massive discount. This grants you lifetime access to all course materials and updates.
Do I qualify for a certificate upon completion?
Yes. When you enroll with a 92% coupon provided by CoursesWyn, you follow the same path as a paid student and are eligible for the official completion certificate from Udemy.
What happens if the coupon code expires?
Udemy coupons have strict enrollment limits and time windows. If this code expires, we recommend bookmarking this page and checking back daily, as we refresh our deals constantly to find the latest active discounts.
$119.99Save 92%
$9.99

Verified Discount Code

CLAIM DISCOUNT 🚀
Lifetime Access
🏆Official Certificate
📱Access on Mobile/TV
🔄Latest Updated Course

Claim Your Discount Code

XXXXXXXX
CLICK TO SHOW
$119.99
$9.9992%
GET DEAL