Ing. Software / Ing. Computadoras

 

De acuerdo con la IEEE -Institute of Electrical and Electronics Engineers- una de las asociaciones de profesionales más grandes del mundo de la tecnología, la Ingeniería en Software puede ser definida como el diseño y desarrollo sistemático de productos de software, así como el manejo de sus procesos. Comúnmente estos procesos incluyen:

  1. Una fase investigativa de las necesidades del cliente.
  2. Convertir dichas necesidades en una lista de requerimientos.
  3. Diseñar una arquitectura del sistema capaz de cubrir dichos requerimientos.
  4. Diseñar, codificar, probar e integrar las diferentes partes del sistema.
  5. Hacer pruebas del sistema integrado como un todo (la calidad y sistemas de certificación son muy importantes en esta fase).
  6. Lanzar y dar mantenimiento a dicho software.

Los productos de software deben caracterizarse por cumplir con las necesidades para las cuales fueron diseñados, deben ser confiables, fáciles de usar, modificables (abiertos a correcciones), y tener la capacidad de ser transferidos de un entorno a otro (por cuanto la tecnología cambia constantemente). Deben además ser consistentes y contar con medidas de seguridad para salvaguardar la información que albergan. 

La Ingeniería en Computadores por su lado, es una fusión de dos disciplinas: la Ingeniería Electrónica y la Computación. Incluye la ciencia y tecnología del diseño, construcción y mantenimiento de componentes de software y hardware, sistemas de computación modernos y equipo controlado por computador que podemos encontrar en automóviles, aviones, maquinaria industrial, televisores, video juegos, hornos de microondas, redes de sensores, etc. En la carrera de Ingeniería en Computadores se estudian aspectos del diseño, desarrollo e implementación de dichos sistemas.

Otras habilidades blandas requeridas por un profesional en esta rama son:

  • Pensamiento analítico: Se deben primero analizar las necesidades del cliente para poder desarrollar una propuesta que atienda dichas necesidades.
  • Habilidad comunicativa: Para poder dar instrucciones claras a los demás miembros del equipo que se encuentren trabajando en un proyecto.
  • Creatividad: Una mente creativa está detrás de cualquier producto de software.
  • Servicio al cliente: Explicación al cliente de cómo funciona el sistema y aclaración de cualquier consulta.
  • Orientación al detalle: Se trabaja en muchas partes del sistema a la vez, por lo que se debe prestar atención a cada uno de los detalles que formarán el producto final.
  • Resolución de problemas: Al encargarse de los procesos de diseño y ejecución de principio a fin, se debe ser capaz de resolver cualquier problema que se pueda presentar en el proceso.
  • Trabajo en equipo: Se debe de trabajar de la mano con los demás miembros del equipo involucrados en el proceso.
  • Habilidades técnicas: Comprensión de capacidades y distintos lenguajes de computación y nuevas tecnologías para diseñar e implementar piezas efectivas de software acorde con las últimas tendencias.

Algunos énfasis o áreas de especialización más demandados:

  • Desarrollo de software: interactivo, front y back, móvil
  • Cloud (computación en la nube), virtualización
  • Ciberseguridad, malware
  • Testing
  • Bases de datos
  • Soporte aplicaciones: SAP, otros ERPs
  • Diseño, hardware

Éstas son disciplinas en crecimiento, y te ayudarán a desarrollar tanto las habilidades computacionales como el pensamiento analítico. Te enseñan a crear, no simplemente utilizar las nuevas tecnologías. ¡Te invitamos a investigar más sobre estas carreras en algunos links relacionados en la web!

Fuentes: Bureau of Labor Statistics, U.S. Department of Labor, Occupational Outlook Handbook, Software Developers / IEEE - http://www.ieee.org/index.html