He visto los 3 títulos (y algunos más) usados indistintamente. Muchas compañías asumen que son iguales, muchas diferencian mucho los títulos. En general, todos implicarían algún aspecto del desarrollo de un sistema de software. Históricamente, creo que también ha habido cierta influencia académica en los títulos de trabajo. En mi experiencia he visto:
Programador:
No he visto muchas ofertas de trabajo solo para “programador”, pero generalmente asocio ese rol / título estrictamente a la programación de computadoras (codificación). Esta persona estaría específicamente escribiendo código, en un idioma específico, para un proyecto específico. Muchas universidades imparten cursos de “Programación Aplicada” que permiten a los graduados ingresar rápidamente a la fuerza laboral con una habilidad lingüística específica. Los cursos de videojuegos en la universidad, por ejemplo, enseñan un juego de herramientas específico para una plataforma específica, lo que permite a sus estudiantes hacer la transición fácilmente a la industria como “programadores”. El “mono código” estereotípico es a menudo un “programador de computadoras”.
Desarrollador:
Por lo general, tiene algún prefijo: desarrollador web, desarrollador de aplicaciones, desarrollador de software. Creo que ha habido cierta confusión con este rol de “desarrollador” específicamente en el desarrollo web porque a menudo incluye todo, desde el desarrollo frontend / desarrollo backend y, a veces, incluso el diseño gráfico. Algunos diseñadores gráficos convertidos en programadores se llaman a sí mismos “desarrolladores web” sobre “programadores web” para evitar confusiones. Un “desarrollador de aplicaciones” podría trabajar en el diseño y la creación de software en una plataforma propietaria específica, en un entorno propietario específico. He experimentado “desarrolladores” incluyendo cualquier aspecto del diseño / arquitectura / desarrollo de un proyecto de software. Tiendo a pensar en un “desarrollador” como alguien que está involucrado en muchos aspectos de la fase de desarrollo de software, no solo en la codificación.
- ¿Por qué LinkedIn no crea una mejor aplicación móvil?
- ¿Cómo debe escribir un gerente de producto los requisitos para su equipo de ingeniería donde el entregable es un conjunto de servicios web?
- ¿Qué función cumplen los analistas de garantía de calidad de software?
- ¿Por qué la leyenda urbana dice que Steve Jobs, Jeff Raskin y el resto del equipo 'robaron' de Xerox?
- ¿En qué idioma de software funcionan los semáforos?
Ingeniero de software:
Este se pone complicado. Muchos empleadores y programadores informáticos han comenzado a abusar de este título. * Formalmente *, Software Engineering es una rama acreditada de ingeniería. Puede obtener su P.Eng (en Canadá) o la Certificación de Ingeniería Profesional (en los estados), no sé cómo funciona en otras partes del mundo. Los sistemas de misión / vida crítica, como el software de guía de aviones, los reguladores de instrumentos médicos se administran (con suerte) estrictamente y requieren este tipo de certificación (aunque este no es siempre el caso).
En la práctica, Ingeniería de Software se ha utilizado como un término más general que describe el desarrollo de software por parte de alguien que tiene un M.Sc / B.Sc en Informática o equivalente. Esto incluye experiencias o capacitación en prácticas de Ingeniería de Software como pruebas, diseño, desarrollo, procesos, etc. Desde la perspectiva de los empleadores, este es un título más flexible y más atractivo para los empleados internacionales porque se incluye la parte de “Ingeniería” de “Ingeniero de Software” en la lista NAFTA de profesiones permitidas. Una computadora “Programador” o “Desarrollador” no podrá obtener fácilmente una VISA de trabajo. Un “ingeniero de software” tendrá muchas más posibilidades.
Una vez más, algunas personas tratan estos títulos como sinónimos, yo personalmente no. Si usted es un empleador que intenta establecer un título de trabajo, intente describir lo que hará esta persona. Personalmente, he tenido trabajos con los 3 títulos enumerados en algún momento, y tuve diferentes deberes (como se describió anteriormente) mientras tenía cada título. Desde mi experiencia, y un poco de navegación rápida en glassdoor.com mostrará las expectativas salariales como: $ Soft Eng. > $ Developer> $ Programmer pero obviamente siempre hay excepciones.
Espero que esto te dé una idea, por favor comenta si no estás de acuerdo, esta es solo mi perspectiva. Puedes llamarte como quieras, he visto a un “Ingeniero Arquitecto de Software Sr.” escribiendo código html todo el día …