Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Troubleshooting Backend Systems
Bestseller
Highest Rated
Rating: 4.7 out of 5(791 ratings)
14,588 students

Troubleshooting Backend Systems

Unlocking Peak Backend Performance with Chrome DevTools, MITM Proxy, and Wireshark
Created byHussein Nasser
Last updated 10/2025
English

What you'll learn

  • Identify bottlenecks in backend applications
  • Find where latencies live
  • Intercept slow requests from Mobile and Web Apps
  • Using DevTools Networking tap to its full potentional
  • Using Man in the middle proxy MITM to intercept HTTP requests
  • Using Wireshark for packet inspections
  • Real-world Performance Analysis of Backend Applications

Course content

9 sections46 lectures10h 34m total length
  • Welcome2:27
  • Who is this course for?3:30

    For Backend and full stack engineers. 

  • Course Outline11:58

    We will start with analyzing web application running on the browser using DevTools networking. With that we can identify DNS issues, connection and TLS issues and then requests that take the most time.


    Because not all apps run on the browser we will use a more advanced tooling to intercept HTTP the raffic between two running applications (a client and as server), MITM proxy is perfect for the job. We will intercept a mobile application and see its requests. We will also learn how to intercept traffic between to services without setting the proxy feature.


    Finally when we need to go deeper than HTTP , we will use Wireshark to intercept low level TCP packets and any protocol such as mysql or postgres.


    I call these the three tiers levels of analysis



    In the final sections I will give an example of a slow running application and how to use all three tools to identify exactly where the bottleneck is.

  • Socket Programming - Backend C WebServer Setup39:43

    In this lecture we will setup the example of a simple C HTTP WebServer that we will use to run our analysis through all tiers. I chose C because it doesn't hide implementation. And we need to know what our backend is doing, intercept , insert break points so we can stop execution in certain points.


    The source code attached.


  • The Kernel Accept, Send and Receive queues1:06
  • Course downloadable resources

Requirements

  • Must have built a frontend or backend application
  • Familiar with networking and backend concepts

Description

I used to think that performance of the backend depends on the application logic itself. However, there are many other factors that play a role in overall quality and performance of the application. Networking, connection establishment, security, backend communication, protocol serialization, intermediaries and much more.


Often debugging the app if you have the source code allows the developer to zone in to the problem and identify it, However most of the time as an engineer you either don’t have access to the source code or its time consuming to debug a complex app. That is why in this course I present you with some tools I use to analyze the backend application performance and provide a good guess and what might be the problem without stepping in the code. Often known as black box testing.


If your application is a web application that is consumable through a browser, devtools allow us to pretty much inspect all traffic going out from the app and can tell us so much about the app. If the app is not available in the browser we will then demonstrate MITM proxy which is a proxy that intercepts HTTP traffic and log it, this way we can inspect requests and see which of those are the culprit. Finally, if the app uses a protocol that isn’t HTTP intercepting it with a proxy becomes little tricky, so we will use both tcpdump and Wireshark to capture low level packets and see our requests this way.


This course is designed for developers and engineers who have built backend and frontend applications and would like to take their skills further. This course is intermediate to advanced and it is recommended that students have a background in networking and backend fundamentals both of which I have courses for.



Who this course is for:

  • Backend Engineers
  • Frontend Engineers
  • Q&A Engineers
  • Full Stack Engineers