Ciencias de la computación
Ingeniería de software es el estudio del diseño, implementación y modificación del software con la finalidad de asegurarse de que es de alta calidad, asequible, fácil de mantener, y rápido de construir. Es un enfoque sistemático para el diseño de software, que implica la aplicación de prácticas de ingeniería de software. Los ingenieros de software comercian con la organización y análisis de software — no solo lidian con la creación o fabricación de un nuevo software, sino también con su mantenimiento y disposición interna. Se prevé que estén entre las ocupaciones de más rápido crecimiento entre 2008 y 2018. Debido a la novedad de este subcampo, la educación formal en Ingeniería de software generalmente es parte de los planes de estudio de ciencias de la computación, la gran mayoría de ingenieros de software tienen un grado académico en ciencias de la computación sin tener relación con la ingeniería.
Ingeniería de software para investigación
Ingeniería de software para investigación, frecuentemente referida por sus siglas en inglés, RSE "(Research Software Engineering"), es el nombre genérico que reciben las prácticas de ingeniería de software aplicables a proyectos de investigación científica y/o académica. El término se propuso por primera vez en un artículo de 2010, en el marco de una investigación sobre herramientas para desarrollo de software utilizadas en proyectos de investigación científica. El término empezó a ser utilizado en Reino Unido en 2012, a raíz de la necesidad de definir las herramientas de desarrollo de software más relevantes para la investigación. Estas se centran especialmente en la reproducibilidad, usabilidad y exactitud de los análisis.