Introduction to Backend
Hello fellow software engineer enthusiast, and welcome to the Backend! 👋
Now that you have the foundations & come equipped with the building blocks, it's time we dig a little bit deeper into how the internet works and how we can build our small part of it.
The Backend module, consisting of 6 weeks, has been designed and refined to ensure you are prepared for the industry, from a technical
perspective to having a healthy growth and learning mindset
. It's also packed with new content and fun exercises, starting at slower pace and increasing in challenge as the weeks pass.
🧩 Where does backend fit into all this?
After learning and practising the basics of JavaScript in Foundations and Building Blocks, we're turning our attention to how we can use those blocks to build something
👷.
That something is a RESTful backend API
which runs on a server and it is what powers the vast majority of websites, mobile apps and tech tools you have interacted with.
Let's break that down a little:
- A server is a computer or system that provides resources, data, services, or programs to other computers and it's where all the work and logic for handling user actions, interacting with data and modifying it lies.
- An API (or Application Programming Interface) is a set of definitions and protocols that allow one application / server to communicate with another application / server (usually, but not necessarily, over the web)
- And finally, REST represents a standardized set of rules for building web APIs using HTTP methods. We call APIs built following these rules "RESTful".
Therefore, not all servers of them have to be (or have) an API, if they can perform tasks without the need for interactions with users or other computers. And not all APIs have to be web or REST APIs.
📚 Read more: API vs Web Service: What’s the Difference?
🏆 What is our objective?
Based on the above, we can define our objective
in a simple sentence:
Learn how to build and publish, following best practices, a RESTful backend API for personal use that can interact asynchronously with databases to retrieve, save, change and remove data.
We will achieve this by covering (in theory and through projects) the following topics:
- How the internet works and how do computers communicate over the internet
- What is a
server
, what is anAPI
and how to create an API - What is a
database
and how can we use one consistently across any computer setup withDocker
- How to interact with data in a database using
SQL
and JS libraries - What are the
best practices
to build rich and powerful APIs - How to
test
APIs and automate testing - How to
deploy
an API on the internet
We want you to succeed both during this course and out there in the industry
, which is why this module is slightly more challenging and expects you to be proactive, curious and perseverent.
🐎 Ready?
Let's dig a little bit deeper into the world of Backend and ensure you know what to expect and have everything set up for the first weeks...