Fundamentals of Networking Engineering

Understanding the first principles of networking to build low latency and high throughput backends

Fundamentals of Networking Engineering – Courses Bag

Understanding the first principles of networking to build low latency and high throughput backends.

What you’ll learn?

Fundamentals of Networking Engineering – Courses Bag

IP Protocol

TCP Protocol

UDP Protocol

Understand the circumstances where requests and responses are slowed down

Learn how DNS works

Learn how TLS works

Learn the building blocks of TCP/IP Protocol

Learn the OSI Model and where your application fits in it

Understand the performance impact of TCP/IP in Backend applications

Make better decisions on what protocol to select for the Backend

Build and Design better TCP/UDP Backends

Use Wireshark to inspect traffic

Use tcpdump to check traffic

Build TCP and UDP Servers with multiple languages (Javascript and C)

Networking with Docker

Requirements

Basic programming experience

Recommended: Having built a backend application

Description

We are entering an era in software engineering where we rely on libraries and frameworks to do most of our work. While this is useful and save tremendous dev hours, it creates leaky abstractions that manifest in the form of performance degradation, unexpected errors, 100% CPU, network and disk usage, hangs, latency, and many other. It becomes difficult to articulate what goes wrong on the Backend and how to fix it when engineers don’t understand the basic building block of what they are interacting with.

Network communication is one of the most critical pieces in backend engineering. And the TCP/IP Internet suite is the basic fundamental building block of communications that links the front end to the Backend. These layers are essential for backend engineers to optimize the stack, minimize latency, and increase throughput.

Properly understanding these pieces mattress and not just memorizing definitions and packet headers to pass an exam. If an engineer truly understood what is happening when their Backend API receives an HTTP POST request, they would be astonished at how much is happening behind the scenes. They would completely change the way they approach backend API designs; they will try to select the best protocol for the job and tune it to its maximum potential. They will start asking questions about frameworks and libraries that nobody else does. Those questions will make them fully utilize that framework to their full potential.

If you are a network engineer who already knows the fundamentals and wants to start building backend applications effectively, this course might help you bridge the gap.

This course is not designed for those who want to pass network certification tests (CCNA, CCNP, CCIE, etc..)

Who this course is for?

Backend engineers

Frontend engineers who are interested in starting building Backend apps

Full stack engineers

DevOps engineers

Site reliability engineers