Code Monkey home page Code Monkey logo

backend-engineers-guide's Introduction

Backend Engineer's Guide

This repository is a collection I've put together, focusing on various backend engineering topics. It's a place where you can find information on API design, databases, deployment, distributed computing, networking, performance optimization, security, and even more specialized areas. Each topic is broken down into a Markdown file, found in the notes directory. Here, I've tried my best to provide detailed notes, explanations, and examples.

I try to keep these notes updated and expanded regularly, aiming to provide up-to-date, relevant information. Of course, if you have any contributions or suggestions, they're more than welcome. We're all learning together, after all.

Getting Started

To begin, clone the repository to your local machine and navigate to the "notes" directory to access each topic's Markdown file.

git clone https://github.com/your_username/Backend-Engineers-Guide.git
cd Backend-Engineers-Guide/notes

what are:

  • cookies
  • sessions

https://youtube.com/playlist?list=PLP0UwHI8wt0wNDYZcHmMhxGZkYWU0fhcM&si=63bEfrN7Hi5Cp-eb

Notes

API Design

Topic Notes
Overview
REST
GraphQL
gRPC
Stateful vs Stateless Applications
Encoding and Data Transmission

Network Communications

Topic Notes
Real-time Communication Methods
TCP vs UDP
HTTP Protocol
WebSockets
Performance Metrics

Web Servers

Topic Notes
Web Server Overview
Static and Dynamic Content
Tomcat
Apache
Nginx
Forward Proxies
Reverse Proxies
Load Balancing

Databases

Topic Notes
Types of Databases
Transactions
Indexes
Isolation Levels
Data Warehousing
Replication

Caching

Topic Notes
Caching Strategies and Techniques
Redis

Data Processing

Topic Notes
Messaging System Integration
Message Brokers
Batch Processing
Stream Processing

Security

Topic Notes
Protobuf
XML
JSON
YAML

Security

Topic Notes
Auth
TLS
Security Vulnerabilities in Backend
Security Best Practices and Measures
Third-Party Cookies Vulnerabilities

Deployment

Topic Notes
CentOS Digital Ocean
Static Python Website

Distributed Systems

Topic Notes
Coordination Services
Gossip Protocol
Linearizability
Concurrent Writes
Operational Transform

Refrences

Here are some recommended resources for learning more about backend engineering:

Contributing

We welcome contributions to this guide! If you would like to contribute, please create a pull request. For major changes, please open an issue first to discuss what you would like to change.

License

MIT

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.