> For the complete documentation index, see [llms.txt](https://marcylabschool.gitbook.io/swe/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://marcylabschool.gitbook.io/swe/mod-6-databases/overview.md).

# Overview

Backend encompasses quite a lot and requires you to shift your thinking to a higher level. Instead of worrying about every tiny detail, you must expand your view to learn entire systems of functions that interact with each other to create an entire application. There will be many things that you don't fully understand and you will learn to be alright with that. To succeed in this module, you must hone your skills of **systems-level thinking**, **building mental models**, and **detail orientation**.

In this module, we'll learn about:

* **Databases** — A place to put data and have it persist, even if the server turns off.
  * **Postgres** — The type of database we'll use (tables, records, fields/properties).
  * **SQL** — The language used to execute database commands.
  * **pg** — The npm package we'll use to send SQL queries to our Postgres database from our server application.
* **Authentication** — Ensuring that only valid users can access protected content.
* **Authorization** — Ensuring that a given user has permission to modify content.
