He trabajado con un equipo con una dicotomía de línea muy dura entre los equipos front-end y back-end.
Cosas clave que he encontrado que hacen que la mayoría de los desarrolladores back-end sean diferentes de los desarrolladores front-end generales que conocía (estos no son universales)
Los desarrolladores de backend son políglotas por necesidad. Tenemos que trabajar en varios idiomas incluso en el subconjunto más pequeño de tareas de back-end. Esto significa que tendemos a poder leer código en idiomas que no sabemos si está bien escrito. Nuestros desarrolladores front-end a menudo tenían problemas para seguir el flujo de código cuando discutíamos cómo recibían un poco de información específica, mientras que nosotros (el back-end) podíamos sentarnos junto a un desarrollador front-end para ver cómo estaban usando nuestra información y hacer sugerencias informadas para Mejorar la aplicación en general.
- ¿El concepto / técnica de desarrollo de Flux encajaría en el desarrollo de back-end? ¿Puede reemplazar MVC?
- ¿Hay alguna forma de adivinar qué marco de back-end puede usar un sitio? ¿Qué tipo de pistas o patrones se pueden encontrar en el marcado o en otro lugar para regalar algunos de los marcos más conocidos como Rails o Django?
- Cómo utilizar más de un idioma en mi back-end para diferentes propósitos
- ¿Qué es más desafiante en los niveles más altos de habilidades, desarrollo web front-end o back-end?
- ¿Podría alguien aprender tanto el desarrollo front-end como el desarrollo back-end?
Nuestros desarrolladores front-end no entendieron la naturaleza de la relación cliente-servidor. A menudo nos pidieron que hiciéramos tareas en el servidor que hubieran sido más útiles para la salud de la aplicación si la manejaran en el dispositivo cliente. Comprender los conceptos básicos de la distribución del procesamiento y descubrir cuándo una tarea “simple” para el servidor se suma a su base de usuarios nos ayuda a estar atentos al decidir cómo dividir las funciones.
Una cosa que los desarrolladores front-end parecían perderse muy a menudo es cómo se almacenan los datos y cómo se presentan, no es necesario que estén relacionados. A menudo me pidieron que almacenara datos de cierta manera cuando hay mejores soluciones para hacer que la aplicación sea más fácil de mantener. Aprenda los conceptos básicos del diseño de la base de datos y sepa que cuando le decimos que cierto modelo es difícil de almacenar de la manera que lo solicita, no le estamos mintiendo. Esto también significa que, a veces, cuando el front end pregunta sobre un recurso específico, en el back-end puede haber múltiples recursos juntos para ellos. A menudo realizamos manipulaciones en nuestros datos para cubrir todos los casos de uso.