¿Cuál es la diferencia entre desarrollador web, programador web y desarrollador web de pila completa (o programador)?

hmm pregunta interesante.

Con el tiempo, el nombre de las cosas cambia, y esto ciertamente sucede para el desarrollo web. Esto es lo que esos títulos significan para mí

Un desarrollador web diferiría de un programador en que yo diría que un programador hace algo desde cero y un desarrollador web modifica algo. Es casi el mismo trabajo, pero un programador no tiene nada para comenzar. También el programador web suena más como si estuviera girando hacia un desarrollador back-end, mientras que un desarrollador web gira más hacia un front-end …

Mi razonamiento para esta sugerencia. Antes del desarrollo web, un programador habría sido alguien haciendo C ++ o VB o ese tipo de cosas … el código que ahora se considera el desarrollo de back-end. Si suponemos que un desarrollador está modificando algo que ya existe, normalmente un cliente desea actualizar / actualizar su sitio web existente, por lo que una buena cantidad de esto será contenido de la nueva página y quizás actualizaciones de estilo. En general, los clientes se centran más en lo que tienen delante que en sus procesos.

Nota al margen: a menudo me he maravillado de los procesos y he conseguido que algo funcione de manera sorprendente, pero el front end es un poco escaso porque no me he centrado en ello, probando el back-end (la funcionalidad) que todos los usuarios quieren decir es … “¿podemos hacer que sea un poco rojo” o “oh, no me gusta el color de la fuente …”

Por último desarrollo completo de la pila . Todos me llaman desarrollador full stack, odio el término porque puede variar mucho. Algunas personas dicen que es simplemente front-end y back end juntos. Realmente no estoy de acuerdo con esto.

Cuando alguien emplea un desarrollador de pila completa, normalmente contrata a una sola persona en lugar de un grupo de personas. Entonces, un desarrollador de pila completa tiene que ser una banda de un solo hombre.

Esto significa que un desarrollador de pila completa tiene que ser bueno en:

  • reunión de requisitos
  • diseño de solución
  • gestión de proyectos (incluye gestión de recursos)
  • documentación formal
  • configuración y configuración del servidor
  • Seguridad (también incluye protección de datos)
  • Desarrollo front end
  • Desarrollo de back end
  • Pruebas
  • Formación
  • Seguimiento de problemas

No estoy seguro de por qué la gente se ha fascinado con querer ser un desarrollador full stack. Estaba mucho más feliz como desarrollador front-end y back-end … Estoy pensando que al final probablemente terminaré siendo un gerente de proyecto técnico, parece que cuanto más stack completo haces, menos codificas …

Mi vista:

Diseñador web:
Principalmente enfocado en el diseño y la apariencia de un sitio (ui / ux). Deben conocer algunos conceptos básicos fundamentales HTML, CSS, posiblemente algunos JavaScript, para que no diseñen la puesta de sol que es imposible de implementar.

Desarrollador web / Programador:
Puede incursionar en JavaScript, pero se centró más en el middleware con el que interactúa el front-end para llamadas ajax, desarrollo de api y manejo de contenido dinámico. Debe saber cómo usar un orm u otras herramientas para comunicarse de manera eficiente con una base de datos.

Desarrollador Back End:
Funciona principalmente en el desarrollo de API altamente eficaz, escalabilidad y optimizaciones de bases de datos, incursiona en devops.

Desarrollador Full Stack:
Todo lo anterior, excepto el diseño. Tal vez no a nivel experto, pero cómodo haciendo cualquiera de las tareas desde HTML, CSS, js, middleware, api con, trabajo de base de datos, devops básicos.

El problema es que no hay una definición formal para estos elementos, por lo que realmente tendrá que pedir las habilidades específicas que necesita. Cada uno de estos al menos insinúa el conjunto mínimo de habilidades que tiene la persona.

“Full Stack” significa que la persona puede trabajar en el front-end (HTML, CSS, Javascript), en el middleware (PHP, Python, etc.) y en la base de datos de back-end (MySQL, CouchDB, etc.).

Nunca escuché que la gente usara “Desarrollador web” y “Programador web” de manera diferente, pero ambos deberían poder trabajar en el Front End y Middleware (pero podrían hacer más).

Además, un “Diseñador web” debería ser capaz de crear la apariencia visual del sitio en Photoshop, etc. (pero podrían hacer más).