The Backend Engineering Show with Hussein Nasser

Six stages of a good software engineer


Listen Later


You get better as a software engineer when you go through these stages.


0:00 Intro 

1:15 Understand a technology

7:07 Articulate how it works

15:30 Understand its’ limitations

19:48 Try to build something better

27:45 Realize what you built also has limitations

32:48 Appreciate the original tech as is




  1. Understand a technology 
  2.  We use technologies all the time without knowing how it works. And it is ok not knowing how things work if interests isn’t there. But when there is interest to understand how something works, pursue it. It feels good when you understand how something works because you work better with it, you swim with the tide instead of against it. 


    When I learned how TCP/IP work..  you would appreciate every connection request, how you read requests. You will ask questions,


     what is my code doing here? 

    When exactly I’m creating connections?

    When am I reading from the connection? 

    Is it safe to share connections?



    1. Articulate how it works
    2. This one is not easy, you might think you understand something until you try to explain how it works. If you find yourself using jargon you probably don’t understand and you just try to impress others. Have you seen people who want to talk about something to show they understand it? It’s the opposite. Try to truly articlate how it works, you will really understand it , back to 1.


      I thought I understand how backend reads requests until I tried to speak to it. 


      1. Understand the technology limitations

      2. Once 1,2 are done you will truly understand the tech, now you are confidant, you are excited about the tech and you will truly see when you can use the tech to its full potential and also know the weak points of the tech where it breaks, this happens a lot with TCP/IP. We know tcps limitations. 


        1. Try to build something better
        2. This one is optional and can be skipped, but attempting to design or building something better then the tech because you know the limitations will truly reveal how you became better. But the challenge here is the ego, you might understand the limitations but you problem is thinking that what you will build is flawless. This step must be proceed with caution. 


          1. Realize what you build also has limitation
          2. Dust settles.. this step hurts, and you may take a while to realize it, but whatever you build will have flaws… and when you realize this it is when you get better as an engineer. 


            1. Appreciate the tech as is
            2. This is when you are back full circle you are back to the first stage, look at the technology and understand it but don’t judge it.. just know the limitations and its strength and flow with it. Stop fighting and instead build around a tech, does that mean you shouldn’t build anything new, of course not. Go build, but don’t stress around making something better to defeat existing tech. But actually build it for building it.


              ...more
              View all episodesView all episodes
              Download on the App Store

              The Backend Engineering Show with Hussein NasserBy Hussein Nasser

              • 4.9
              • 4.9
              • 4.9
              • 4.9
              • 4.9

              4.9

              40 ratings


              More shows like The Backend Engineering Show with Hussein Nasser

              View all
              Freakonomics Radio by Freakonomics Radio + Stitcher

              Freakonomics Radio

              32,245 Listeners

              Software Engineering Radio - the podcast for professional software developers by team@se-radio.net (SE-Radio Team)

              Software Engineering Radio - the podcast for professional software developers

              273 Listeners

              Risky Business by Patrick Gray

              Risky Business

              374 Listeners

              Science Vs by Spotify Studios

              Science Vs

              12,172 Listeners

              Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

              Syntax - Tasty Web Development Treats

              987 Listeners

              Darknet Diaries by Jack Rhysider

              Darknet Diaries

              8,107 Listeners

              Practical AI by Practical AI LLC

              Practical AI

              210 Listeners

              Within Reason by Alex J O'Connor

              Within Reason

              1,658 Listeners

              All-In with Chamath, Jason, Sacks & Friedberg by All-In Podcast, LLC

              All-In with Chamath, Jason, Sacks & Friedberg

              10,228 Listeners

              Dwarkesh Podcast by Dwarkesh Patel

              Dwarkesh Podcast

              541 Listeners

              Big Technology Podcast by Alex Kantrowitz

              Big Technology Podcast

              513 Listeners

              Hard Fork by The New York Times

              Hard Fork

              5,548 Listeners

              The AI Daily Brief: Artificial Intelligence News and Analysis by Nathaniel Whittemore

              The AI Daily Brief: Artificial Intelligence News and Analysis

              655 Listeners

              Prof G Markets by Vox Media Podcast Network

              Prof G Markets

              1,474 Listeners

              The Pragmatic Engineer by Gergely Orosz

              The Pragmatic Engineer

              74 Listeners