Diferencia entre desarrollador de software y programador

Diferencia entre desarrollador de software y programador

¿Qué es un desarrollador de software?

La definición que existe en la Wikipedia de desarrollador de software está bastante bien, aunque la definición que la comunidad «wikipedista» ha elaborado en inglés me parece más precisa y completa.

En la primera parte de la definición se aclara que un desarrollador de software es una persona u organización encargada de aspectos que van más allá de picar código y del diseño dentro del proceso de desarrollo del software, y que en general se puede definir como la gestión de proyectos de desarrollo de software. Se especifica que a los desarrolladores de software tambíen se les denomina analistas de software.

Tras esta primera acalaración se explica que cada vez más la diferenciación entre el diseño de sistemas, el desarrollo de software y la programación es cada vez más pronunciada y aparente a medida que pasa el tiempo. Yo estoy de acuerdo con esta idea aunque está claro que existen muchas opiniones y debates en torno a los límites exactos entre unas tareas y otras.

Pero la parte de la definición de Wikipedia que más me gusta es la enumeración de las tareas que suele desempeñar un desarrollador de software que no hace un programador. El desarrollador de software suele desempeñar todas estas tareas:

  • participa en la definición del producto de software que se va a comercializar, incluyendo el análisis de los nichos de mercado al que va dirigido
  • especificaciones del software
  • el análisis de requerimientos del software
  • diseño y mejora de prototipos y de demos para validar requerimientos
  • el análisis del costo-beneficio, que incluye elegir el tipo de arquitectura y el framework que implica tener claro el presupuesto y el calendario de trabajo
  • diseño
  • programación
  • implementación
  • documentación para los usuarios del software desarrollado
  • testeo de las aplicaciones y supervisón del proceso de arranque de prueba de la aplicación
  • mantenimiento

En relación con este tema, Eric Sink, autor del muy recomendable The Business of Software, recomienda a las ISV’s («Independent Software Vendors», autónomos y pequeñas empresas de desarrollo de aplicaciones) contratar a desarrolladores y no a programadores -programador entendido como profesional de escribir código que no está dispuesto a hacer muchas de las tareas enumeradas arriba-.

Y claro, en las empresas grandes las tareas enumeradas arriba las realizan entre varias personas pero en un departamento de programación o en una PYME dedicada al desarrollo de aplicaciones en muchos casos hay una sola persona que se dedica a hacerlo todo.

 

Fuente: velneo