¿Los desarrolladores de stack completo se centran en backend o frontend?

Para mí, el término “desarrollador de pila completa” es principalmente un término de reclutamiento.

Me especializo en desarrollo front end. Estudio mucho, trabajo duro, pienso en ello todo el tiempo, experimento constantemente.

Sí, esto significa que tengo que saber cómo escribir el código del lado del servidor para enviar y recibir información a mis interfaces de usuario, tengo que saber cómo utilizar un entorno de datos de algún tipo, y debería estar observando algunas prácticas modernas y consistentemente útiles a lo largo de la manera. En lo que respecta a los reclutadores, soy ese desarrollador legendario. Todos me dicen “así que estás lleno”, incluso cuando digo “bueno … en realidad no”.

Al trabajar en un equipo para crear una aplicación comercial, nunca asumiría el papel de arquitecto de clúster de bases de datos, seguridad y cifrado profesional, etc. Estas son áreas específicas de tecnología en las que puede pasar años entendiendo y desarrollando experiencia.

Y hasta el día de hoy nunca he conocido a un solo desarrollador … NINGUNO … que pueda probar sin lugar a dudas que son tan capaces en todas las áreas de la pila como alguien altamente especializado en cualquiera de ellos. De hecho, todo lo contrario. Cuantas más tecnologías las personas afirman ser competentes, menos me parece que sean realmente competentes con alguna de ellas. El hecho de que pueda piratear un servicio AJAX en un servidor Tomcat y enviar / recibir algo de JSON no lo convierte en un desarrollador de DB o nivel de aplicación profesional. Te convierte en un desarrollador front-end que puede piratear algún código de servidor.

Sin embargo…

… lo que suelo encontrar es que los desarrolladores de front-end son más típicamente “desarrolladores completos” hasta cierto punto, porque el desarrollo de UI es una experiencia que muchos desarrolladores de DB y del lado del servidor no tienen, generalmente porque no les gusta Las tecnologías involucradas en el desarrollo front-end y / o no las toman en serio. Todavía hay desarrolladores que creen que cualquier desarrollador de Java con GWT es un desarrollador de UI tan capaz como cualquier tipo de UI experimentado. Están equivocados

Muchas compañías que saben lo que están haciendo están dando vueltas sobre esto. Muchos que simplemente creen que “la ingeniería es la ingeniería” apuntan con el dedo a sus interfaces de usuario inestables y culpan a la industria por desearlos, porque no entienden las competencias exigentes que se incluyen en la experiencia de desarrollo front-end.

Depende completamente del desarrollador, lo que encontraron más interesante. En cuanto a mí, me concentro principalmente en el backend mientras mantengo mis habilidades frontend cercanas. En realidad estaba bastante confundido cuando tuve que tomar esta decisión, pero en última instancia, decidí que me enfocaría principalmente en el back-end mientras mantenía al menos esta cantidad de habilidades frontend que debería poder diseñar UI / UX de acuerdo con mis necesidades y el como yo quiero.
No digo que el frontend no sea tan importante como el backend. Las personas ni siquiera le darán una segunda oportunidad a su aplicación si no la encuentran visualmente atractiva. Entonces, realmente no importa cuán eficiente o rápido sea tu backend, nadie lo usará a menos que tengas una interfaz de usuario realmente buena. Es por eso que decidí mantener suficientes habilidades frontend porque es muy útil cuando tengo una idea para algo nuevo, puedo crear rápidamente un prototipo de la aplicación completa seguida de una versión más ordenada y finalizada.
En mi punto de vista, si planeas ser un desarrollador full stack, deberías enfocarte por igual en ambos porque si miramos alrededor del mercado hoy, esto es lo que usualmente significa fullstack. Así es como varias startups, otras compañías, etc. definen este término. La capacidad de trabajar en ambos aspectos de la aplicación sin depender de otros no es menos que un regalo si puede mantenerla.

Nos centramos en la arquitectura de software, el diseño de software y el proceso de construcción más que en la construcción de requisitos. Esta planificación y procesos son la base de la cual surgirán los sistemas de software.

También es más que solo construir código ‘front-end’ o ‘back-end’. Muchas veces definimos la infraestructura requerida para los sistemas de software e incluso podemos implementarla. Gestionamos el SCM, gestionamos el flujo de control del desarrollo junto con los PM y la propiedad del negocio / proyecto / producto. Gestionamos los procesos de compilación e implementamos sistemas. Eso es mucho más que escribir código de front-end / back-end. La codificación es probablemente la parte más fácil del conjunto de habilidades.

Si todo lo que puede hacer es escribir algunos javascript / css / html y algunos respaldados para enviar datos, está perdiendo el punto. Esa no es una pila de tecnología completa. Eso es solo escribir código y lo que hace un programador por la definición de ser un programador.

Solo en los últimos 10 años, más o menos, la gente ha querido dividir los dos y luego actuar como si poder hacer ambas cosas lo hiciera impresionante, porque aquí hay noticias, no es así. Como ingeniero de software, deberías poder escribir software: es tu trabajo, es tu pasión, es lo mismo en ambos lados: el código.

El resto de las cosas que acompañan a hacer posibles esos sistemas es donde surgen los desafíos. Se necesita una comprensión íntima de cómo interactúan los sistemas para poder realmente utilizar la pila de tecnología completa y eso es lo que separa a los hombres de los niños, por así decirlo.

AMBOS.

Desarrollador frontend: HTML5 / CSS3 / JavaScript / Jquery …

Desarrollador de backend: PHP + Lavarel / Ruby + Rails / Python + Django / Node.js + Express.js (pila MEAN)

Resulta que los desarrolladores de Full stack se centran tanto en Frontend como en Backend.

Todo depende de la persona y las carreras en la vida.

Para aplicaciones pequeñas, escribe menos código para el back-end y mucho código para mostrar datos desde el front-end.

Dentro de las aplicaciones grandes, la parte del código de fondo es mucho más grande. Necesita mucho tiempo para pensar en la arquitectura, pensar en todas las variantes posibles de cómo devolver el contenido al front-end.

La parte frontal sería mucho más fácil allí.

Básicamente, el código del lado del cliente (front end) debe ser lo más ligero posible.

Estoy bastante seguro de que son capaces de manejar ambos extremos, y solo depende de la situación de qué parte necesita la mayor parte de su enfoque en este momento. Por otra parte, todo vuelve a lo que es un desarrollador de pila completa? ¿Quienes son? ¿Sabes qué es un desarrollador full stack? Esa es solo mi opinión.