¿Qué necesita saber para el desarrollo web de back-end?

En mi opinión, el lenguaje es irrelevante (aunque debe elegir entre los lenguajes de programación web populares como python, php, javascript, etc.). Aprendizaje:

  • Bases de datos (PostgreSQL, MySQL, NoSQL),
  • Marcos de desarrollo web que proporcionan un ORM (Object Relationship Manager) como Django, Ruby on Rails, MeteorJS
  • AWS: los diferentes tipos de servicios EC2, ELB, RDS, Route53, etc.
  • Herramientas DevOps: Ansible, Docker, Capistrano (si todavía se está usando), etc.
  • Autenticación: cómo funciona y diferentes tipos de autenticación
  • Servicios web RESTful y SOAP: ¿en qué se diferencian? ¿Cuál es apropiado en contexto? Cómo diseñar uno.

Definitivamente, hay más áreas de práctica dentro del desarrollo web de back-end, pero esas son solo algunas para comenzar. Si está haciendo desarrollo de backend, lo más probable es que esté escribiendo servicios web para clientes internos y / o externos, por lo que también escribirá algo de lógica comercial. Al desarrollar nuevas funciones de back-end, definitivamente será útil tener un buen conocimiento sobre cómo descomponer los grandes problemas en pequeños fragmentos.

En general, necesitará saber algo acerca de los servidores web, el sistema de nombres de dominio y el protocolo http; si también tiene la intención de configurar servidores para sus proyectos, necesitará mayormente conocimientos de administración de sistemas Linux como shells, ssh configurando firewalls , configuración de MTA y buzones de correo electrónico, SSL, etc.

Definitivamente necesitará conocimiento de un lenguaje de programación del lado del servidor, y son muchos: PHP, ASP, Perl, Ruby, C / C ++ cgi, nodo …

Necesitará conocimiento de algún tipo de base de datos tradicional o software y lenguaje NoSQL.

Dependiendo del tipo de aplicaciones que cree, puede haber más cosas que necesitará saber.

No estoy de acuerdo con la respuesta que menciona AWS, Amazon es solo otro proveedor, como Rackspace o Godaddy, por lo que solo si tiene la intención de hospedar en los servicios web de Amazon debería divulgar sus soluciones

Algunas áreas de conocimiento que vienen a la mente son:

  • Protocolo HTTP (métodos (verbos), solicitudes, respuestas, códigos de retorno, etc.)
  • Transferencia de estado representativo (REST) ​​o GraphGL.
  • Autenticacion y autorizacion
  • El registro de eventos
  • Manejo de errores
  • Herramientas ORM
  • Bases de datos de documentos SQL (transaccionales) y sin SQL
  • Formato JSON
  • Procesamiento asincrónico

Use un marco como Laravel para php,