Impresionante ingeniero de backend
Es una lista de recursos curada y en opinión (inglés y ruso) para desarrolladores de back -end que lo ayudarán a organizar y estructurar su camino de aprendizaje y conocimientos. Inspirado por el increíble CTO.
RU Lista estructurada de recursos para estudiar el desarrollo de backend, que ayudará a sistematizar su conocimiento y elaborar un plan de capacitación. Se basa en la experiencia personal y el estudio independiente de esta área. Inspirado impresionante CTO.
En la publicidad, si está interesado en Beckind y desea bombear la base teórica, le aconsejo que se familiarice con el curso "Arquitectura de aplicaciones web modernas"
Contenido
- Lo esencial
- Ciencias de la Computación
- Desarrollo web y redes
- Bases de datos
- Seguridad
- Arquitectura e infraStractura
- Enlaces relacionados
- Libros
Lo esencial
- Hoja de ruta de desarrollador
- Cómo convertirse en un buen ingeniero de backend (fundamentos)
- Aprenda a convertirse en desarrollador de backend (2018)
- Asesoramiento para ingenieros de back -end principiantes que acaban de comenzar sus nuevos empleos en compañías de software
Ciencias de la Computación
| Temas principales | Los temas principales |
|---|
| ¿Qué es la computadora y cómo funciona? | ¿Qué es una computadora y cómo funciona? |
| ¿Quién hace lenguajes de programación de malezas? ¿Qué tipos de lenguajes de programación existen? | ¿Por qué son los lenguajes de programación? ¿Qué tipos hay? |
| Algoritmos y estructuras de datos | Algoritmos y estructuras de datos |
| Oop | Programación orientada a objetos |
| Concurrencia y paralelismo | Competitividad y paralelismo |
Reduciones (recursos)
- ¿Qué es la informática?
- Mapa de la informática
- CS50 por Harvard. Es / ru
- Curso de bloqueo de ciencias de la computación
- ¿Cómo leen el código de las computadoras?
- La historia olvidada de OOP
- La concurrencia no es paralelismo
- Estructuras de datos para los más pequeños
- Algoritmos y estructuras de datos. Curso preparatorio (primavera de 2016)
- OOP en fotos
- Multiprocesamiento, múltiple placa, asincronismo en Python y no solo. ¿Qué es y cómo funciona?
- Competitividad y paralelismo. Casi lo difícil
Desarrollo web y redes
| Temas principales | Los temas principales |
|---|
| ¿Qué es la arquitectura del cliente-servidor y HTTP? | ¿Qué es una arquitectura de cliente cliente y HTTP? |
| ¿Qué es TCP/IP? | ¿Qué es TCP/IP Stack? |
| ¿Qué es DNS? | ¿Qué es DNS? |
| ¿Funciona sin embargo y autenticación? ¿Qué es JWT? | ¿Cómo funciona la autorización y la autenticación? ¿Qué es JWT? |
| Proxy y proxy inverso | Proxy y proxy inverso |
| Servidores web. Nginx. | Servidor web. Nginx |
| Principios de diseño de API REST | Principios de diseño de API REST |
Reduciones (recursos)
- Desarrollo web en 2021 - una guía práctica
- ¿Qué es TCP/IP?
- Curso de bloqueo de protocolo de transferencia de texto Hyper - HTTP 1.0, 1.1, HTTP/2, HTTP/3
- Curso de accidente y exploración de HTTP
- TCP vs UDP Crash Curso
- Conceptos y ejemplos de API REST
- API de reposo
- 2 horas Curso de bloqueo Nginx + contenido de bonificación
- JWT - Curso de bloqueo de token web JSON (NodeJS y Postgres)
- Proxy vs reverse del servidor proxy explicado
- Cómo funciona http/2, rendimiento, pros & contras y más
- Cómo funciona DNS - ComputerPhile
- Curso de bloqueo de GRPC: modos, ejemplos, pros y contras y más
- Bien. Lenguajes de programación web
- 6. Tecnologías web. Protocolo HTTP | Tecnología
- Desarrollo web para principiantes ¿Cómo se organizan las aplicaciones web? (Frontend/backend)
- Arquitectura de aplicaciones web / De simple a altamente cargado
- ¿Autenticación en aplicaciones web?
- Introducción a los servicios web REST API-Restful
Bases de datos
| Temas principales | Los temas principales |
|---|
| ¿Qué son las bases de datos y los DBM? | ¿Qué es una base de datos y DBMS? |
| ¿Qué es una base de datos relacional? ¿Qué es SQL? | ¿Qué es una base de datos relacional y SQL? |
| ¿Qué son los índices y transacciones? | ¿Qué son los índices y las transacciones? |
| ¿Qué son las propiedades ácidas? ¿Qué niveles de aislamiento existen? | ¿Qué son las propiedades ácidas? ¿Cuáles son los niveles de aislamiento de transacciones? |
| ¿Qué son las bases de datos NoSQL? ¿Cuáles son las diferencias entre NoSQL y SQL? | ¿Qué es NoSQL? ¿Cuáles son las diferencias entre NoSQL y SQL? |
| ¿Qué es la normalización de las bases de datos? | ¿Cuál es la normalización de la base de datos? |
Reduciones (recursos)
- ¿Qué es una base de datos?
- ¿Qué es la base de datos y SQL?
- Tutorial SQL - Curso completo de bases de datos para principiantes
- Curso de diseño de bases de datos: aprenda cómo diseñar y planificar una base de datos para principiantes
- Indexación de bases de datos explicada (con PostgreSQL)
- SQL vs NoSQL o MySQL vs MongoDB
- Introducción a las bases de datos NoSQL
- Conceptos básicos de MongoDB
- MongoDB para profesionales de SQL
- Ácido
- Desmondeamos el SQL usando PostgreSQL - Seleccionar, unir, unir, tener, Counsce, etc.
- Curso "Uso de bases de datos" (2019)
- Curso "Base de datos. Laboratorio de Tarantool" (2018)
- Guía para principiantes: transacciones de ácido y base de datos
- ¿Cómo le explicaría ahora a un joven por qué hay requisitos de ácido para bases de datos?
- Conceptos básicos de las reglas para el diseño de la base de datos
- Normalización de las relaciones. Seis formas normales
- Guía de diseño de la base de datos (1-3 parte de 15)
Seguridad
| Temas principales | Los temas principales |
|---|
| ¿Qué es HTTPS y cómo funciona? | ¿Qué es HTTPS y cómo funciona? |
| ¿Cuáles son los principales tipos de ataques y vulnurabilites en aplicaciones web? | ¿Cuáles son los principales tipos de ataques y vulnerabilidades en aplicaciones web? |
| ¿Qué es la inyección de SQL? ¿Cómo prevenirlo? | ¿Qué es la inyección de SQL? ¿Cómo prevenirlo? |
| ¿Qué es el ataque XSS? ¿Cómo prevenirlo? | ¿Cuál es el ataque XSS? ¿Cómo prevenirlo? |
| ¿Cómo almacenar contraseñas/secretos en la aplicación web? | ¿Cómo almacenar contraseñas/secretos en la aplicación web? |
Reduciones (recursos)
- 9. Asegurar aplicaciones web
- ¿Cómo funcionan los sabios https? ¿Qué es una CA? ¿Qué es un certificado autofirmado?
- Cracking de contraseña - ComputerPhile
- Ejecutando un ataque de inyección SQL - ComputerPhile
- ¡Cómo no almacenar contraseñas! - ComputerPhile
- Sitios web de descripción con secuencias de comandos de sitio cruzado - ComputerPhile
- Scripting de sitio cruzado (XSS) explicado
- Por qué LocalStorage es vulnerable a XSS (y las cookies también lo son)
- OWASP CHEAT SHEAT
- ¿Cómo funcionan los https?
- Seguridad de aplicaciones de Internet (2020)
- ¿Cómo almacenar contraseñas y claves en el código del proyecto? Todo sobre las variables del entorno. Un ejemplo con django
- Inyección de SQL. Defensa y ataque (Parte 1)
- ¿Qué es XSS-Vain y cómo no perderlo como probador?
Arquitectura e infraStractura
| Temas principales | Los temas principales |
|---|
| ¿Qué son los sistemas distribuidos? | ¿Qué son los sistemas distribuidos? |
| ¿Qué es la escala? Horizontal vs escalado vertical? ¿Cómo escalar aplicaciones web y bases de datos? | ¿Qué es la escala? Horizontal vs escalado vertical? ¿Cómo escalar aplicaciones web y bases de datos? |
| ¿Qué es el teorema de CAP? ¿Qué son los sistemas CP y AP? | ¿Qué es el teorema de CAP? ¿Cómo son los sistemas CP y AP? |
| ¿Qué son los microservicios? ¿Qué patrones usan? ¿Cómo diseñar la arquitectura de microservicios? | ¿Qué son el microservicio? ¿Qué patrones usan? ¿Cómo diseñarlos? |
| ¿Qué es la arquitectura impulsada por ISES? | ¿Qué es la arquitectura basada en eventos? |
| ¿Qué es la arquitectura limpia? ¿Cómo implementarlo utilizando su lenguaje / marco de prominación? | ¿Qué es la arquitectura pura? ¿Cómo implementarlo en su Jap / Framework? |
| ¿Cómo implementar aplicaciones web? ¿Qué es VPS? ¿Qué es SSH? | ¿Cómo implementar una aplicación web? ¿Qué es VPS? ¿Qué es SSH? |
| ¿Qué es Docker? ¿A quién lo necesitamos? | ¿Qué es Docker? ¿Por qué es necesario? |
| ¿Qué son los proveedores de la nube? ¿Cómo los usas? | ¿Qué son los proveedores de Claud y por qué se necesitan? |
| ¿Cómo automelizar las pruebas y la implementación? ¿Qué es CI/CD? ¿Cómo implementarlo? | ¿Cómo automatizar las pruebas y el atuendo? ¿Qué es CI/CD y cómo configurarlo? |
| ¿Qué es el certificado SSL? ¿Cómo configurarlo para su aplicación web? | ¿Qué es el certificado SSL? ¿Cómo configurarlo? |
| ¿Qué es Kubernetes? ¿Cuándo lo usas? | ¿Qué es y por qué necesitan Kubernetes? |
| ¿Qué es DDD? | ¿Qué es el diseño impulsado por el dominio? |
Recursos (recursos)
- Acercándose a los sistemas distribuidos
- Conceptos y diseño de arquitecturas web escalables
- Cómo escalar bases de datos SQL y NoSQL
- Escala de su aplicación web
- Teorema de CAP en sistemas distribuidos
- Cómo diseñar una aplicación web: Arquitectura de software 101
- Introducción a los microservicios
- Arquitectura de microservicio en medio
- Mastering Chaos: una guía de netflix para microservicios
- GOTO 2020 • Cuándo usar microservicios (¡y cuándo no hacerlo!) • Sam Newman y Martin Fowler
- Banca moderna en 1500 microservicios
- Administrar datos en microservicios
- ¿Qué es DDD - Eric Evans - DDD Europa 2019
- La arquitectura limpia
- ¿Aprender Docker en 12 minutos?
- Tutorial de Docker para principiantes: un Couurse de DevOps completo sobre cómo ejecutar aplicaciones en contenedores
- ¿Qué es una arquitectura multitenancia y Will se está convirtiendo en álamo?
- La aplicación de doce factores
- Blog de alta carga
- Arquitectura de alta carga
- Cap theoma es un lenguaje simple y accesible
- Creación de arquitectura del programa o cómo diseñar un taburete
- ¿Cómo obtener y configurar el certificado SSL de LetsEnsenScrypt para el sitio?
- Levante el servidor Debian para Python/Django - Instalación y ajuste desde cero. ¿Cómo configurar el servidor?
- Aplicaciones DEET FullStack [Golang+JS]. CI/CD, Digitalocean, GitHub Actions
- Arquitectura pura
- Fundamentos de Docker. Gran lanzamiento práctico
- Artyom Antonenko "Diseño impulsado por el dominio"
- Configuramos la autorización de SSH por clave en Linux / Unix
- Recopilamos la arquitectura escalable de la aplicación web. Escala horizontal y vertical
Enlaces relacionados
- Buena ingeniería de Enunch para iniciar una empresa de Internet
- La tecnología aburrida detrás de una empresa de Internet de una persona
- API como producto. Cómo vender tuk cuando todo lo que sabes es un back-end
- Uml para principiantes
- El otro lado de la habilidad técnica: conocimiento del dominio y visión a largo plazo
- Pasando del desarrollador al CTO
- Lo que realmente hace que un desarrollador senior
- ¿Qué hay detrás de una simple carga de páginas web en un navegador?
Libros
| |
|---|
| Algoritmos de groking | Algoritmos gruñidos |
| "Código limpio" de Robert Martin | "Código puro" Robert Martin |
| "Arquitectura limpia" de Robert Martin | "Arquitectura pura" Robert Martin |
| "Desarrollo de software profesional" de Steve McConnel | "Desarrollo profesional del software" Steve MacCconle |
| "Building Microservices" de Sam Newman | "Creación de microservicio" Sam Newman |
| "Patrones de microservicios" de Chris Richardson | "Microservicio. Patrones de desarrollo y refactorización" Chris Richardson |