Git Product home page Git Product logo

awesome-backend's Introduction

Awesome Backend Engineer

EN A curated and opinionated list of resources (English & Russian) for Backend developers that will help you orginize & structure your learning path and knowledges. Inspired by Awesome CTO.

RU Структурированный список ресурсов для изучения Backend разработки, который поможет систематизировать свои знания и составить план обучения. Основан на личном опыте и самостоятельном изучении данной области. Вдохновленно Awesome CTO.

На правах рекламы Если вы интересуетесь бекендом и хотите прокачать теоретическую базу, советую познакомится с курсом "Архитектура Современных Веб-Приложений"

Contents

Basics

Computer Science

Main topics Основные темы
What is computer and how it works? Что такое компьютер и как он работает?
Why do we need programming languages? What types of programming languages are out there? Зачем нужны языки программирования? Какие типы бывают?
Algorithms & Data Structures Алгоритмы и структуры данных
OOP Объектно ориентированное программирование
Concurrency & Parallelism Конкурентность и параллелизм

Resouses (Ресурсы)

Web Development & Networking

Main topics Основные темы
What is client-server architecture and HTTP? Что такое клиент-серверная архитектура и HTTP?
What is TCP/IP? Что такое стек TCP/IP?
What is DNS? Что такое DNS?
How authorization & authentication works? What is JWT? Как работает авторизация и аутентификация? Что такое JWT?
Proxy & Reverse Proxy Прокси и обратный прокси
Web servers. Nginx. Веб-сервер. Nginx
REST API Design Principles Принципы проектирования REST API

Resouses (Ресурсы)

Databases

Main topics Основные темы
What are database and DBMS? Что такое база данных и СУБД?
What is a relational database? What is SQL? Что такое реляционная БД и SQL?
What are indexes & transactions? Что такое индексы и транзакции?
What are ACID properties? Which Isolation levels are out there? Что такое свойства ACID? Какие есть уровни изоляции транзакций?
What are NoSQL Databases? What are the differences between NoSQL & SQL? Что такое NoSQL? Какие различия между NoSQL и SQL?
What is databases normalization? Что такое нормализация БД?

Resouses (Ресурсы)

Security

Main topics Основные темы
What is HTTPS and how does it work? Что такое HTTPS и как он работает?
What are main types of attacks and vulnurabilities in web applications? Какие существуют основные типы атак и уязвимостей в веб-приложениях?
What is SQL Injection? How to prevent it? Что такое SQL инъекция? Как ее предотвратить?
What is XSS Attack? How to prevent it? Что такое XSS атака? Как ее предотвратить?
How to store passwords/secrets in web app? Как хранить пароли/секреты в веб приложении?

Resouses (Ресурсы)

Architecture & Infrastracture

Main topics Основные темы
What are distributed systems? Что такое распределеные системы?
What is scaling? Horizontal vs Vertical scaling? How to scale web apps and databases? Что такое масштабирование? Горизонтальное vs Вертикальное масштабирование? Как масштабировать веб-приложения и базы данных?
What is CAP Theorem? What are CP and AP systems? Что такое CAP теорема? Как выглядят CP и AP системы?
What are Microservices? What patterns do they use? How to design microservices architecture? Что такое микросервисы? Какие паттерны они используют? Как их проектировать?
What is Event-Driven Architecture? Что такое Event-Driven архитектура?
What is Clean Architecture? How to implement it using your programming language / framework? Что такое Чистая Архитектура? Как имплеменировать ее в вашем ЯП / фреймворке?
How to deploy web applications? What is VPS? What is SSH? Как развертывать веб-приложения? Что такое VPS? Что такое SSH?
What is Docker? Why do we need it? Что такое Docker? Зачем он нужен?
What are cloud providers? How do you use them? Что такое клауд провайдеры и зачем они нужны?
How to automize testing & deployment? What is CI/CD? How to implement it? Как автоматизировать тестирование и деплоймент? Что такое CI/CD и как его настроить?
What is SSL Certificate? How to set it up for your web app? Что такое SSL сертификат? Как его настроить?
What is Kubernetes? When should you use it? Что такое и зачем нужен Kubernetes?
What is DDD? Что такое Domain Driven Design?

Resources (Ресурсы)

Related Links

Books

📚 📚
Grokking Algorithms Грокаем Алгоритмы
"Clean Code" by Robert Martin "Чистый Код" Роберт Мартин
"Clean Architecture" by Robert Martin "Чистая Архитектура" Роберт Мартин
"Professional Software Development" by Steve McConnel “Профессиональная Разработка ПО” Стив Макконел
"Building Microservices" by Sam Newman "Создание Микросервисов" Сэм Ньюман
"Microservices Patterns" by Chris Richardson "Микросервисы. Паттерны разработки и рефакторинга" Крис Ричардсон

awesome-backend's People

Contributors

maximgrynykha avatar zhashkevych avatar

Watchers

 avatar

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.