Desarrollador de software
Nota: para que un programador se convierta en desarrollador, debe poseer experiencia y saber el manejo y la aplicación de metodologías de desarrollo; es sobre todo la experiencia y el conocimiento técnico, lo que ha impulsado la evolución del término 'programador' hacia el término 'desarrollador'.
Diseño de software
El diseño de software es el proceso por el que un agente crea una especificación de un artefacto de software, pensado para cumplir unos objetivos, utilizando un conjunto de componentes primitivos y sujeto a restricciones. El diseño de software  se puede referir a "toda la actividad en conceptualizar, enmarcar, implementar, poner en funcionamiento y, finalmente, modificar sistemas complejos" o "la actividad que sigue a la especificación de requisitos y precede a la programación, como en un proceso de ingeniería de software estilizado.