What is Backend Engineering/Development For Non-Techies

What is Backend Engineering/Development For Non-Techies

There’s a 98% chance you clicked on a link that brought you to this page(prove me wrong in the comment section). What happened when you clicked on that link? Simple answer: Backend ish! Wondering where I got this nice image from check it out on FreePik here

Let's look at it through this lens, let’s assume there’s a very big library and, obviously, there are a lot of books in it. Let’s call all the books in the library data, and let’s call our library our Server. Now we need to get some books from the library or data from our server, but then going to the library ourselves will take us a lot of time, so we write a letter to the library, let’s call this a request, to the library(Server), that we need some books. When the letter gets to the library, the people at the library take our letter and read it properly. Ideally, they should have ways for handling letters like this, let’s call these APIs (hey-pee-his). There are a lot of books in this library so the way they get specific books from a particular shelf or end in the library could also be well-defined, let’s call this an endpoint or route. So once our letter gets to them they know what we want, they search the library for the books we want and send them back to us, let’s call that a response.

In summary, we sent a request to our server to get some data and in the end, we got a response. How we handle all that happens from the point of sending requests to the point of receiving a response is what we call Backend Engineering! The backend engineer organizes our server, designs endpoints, and arranges and stores our data properly so that anytime we need a particular information we can get it.

Now, back to what I said at the beginning, when you clicked on that link that brought you to this page, you made a request to the server(library) containing this page(book) and they responded by sending you the page that contains this information you are currently reading.

Just a piece of extra information, and just skip it if you don't get it, the data the server sends doesn’t look visually appealing the way they are being sent because they are just raw data in a specific data form called JSON. So the frontend engineer takes this JSON and organizes them in a way that looks nicer and easier to understand and interact with, which is what you see.

Ever see a 404-Not found Page when browsing? Responses have a property we call status-code, they are numbers that tell us what happened to our request, 404 means what we are looking for cannot be found, there are other status codes also. Status codes starting with 2 e.g 201, 200 tell us our request is successful, those that start with 3 e.g 300 take us somewhere else(redirect us), those that start with 4 e.g 400, 404, tell us something wrong has happened based on what we have sent and those that start with 5 e.g 500 tell us that something has gone wrong on our Server, that’s when we hear stuffs like “The server is down”, very annoying!

There you go! backend development/engineering is how we handle requests being sent to our server and how we determine what response we send back. Now you understand what backend is. Stay tuned for a deeper dive, and thank you for reading till this point!