Nacional

¿Solo programar? Ingeniería de Software también transforma al mundo con ciencia e innovación

  • Más allá de escribir código, la Ingeniería de Software es una disciplina profundamente ligada a la investigación, la innovación y el pensamiento crítico

 
Por: Dra. Zaira Ruth Zuviria López, académica de la Universidad Autónoma de Guadalajara (UAG)


Frecuentemente se piensa que la carrera de Ingeniería de Software se reduce a escribir código y que el ingeniero de software es un artesano digital que traduce ideas a lenguajes de programación de manera casi mecánica para dar solución a una problemática.
Si bien esta habilidad es fundamental, es apenas un esbozo de lo que un Ingeniero de Software es capaz de hacer, pues debe generar cimientos donde no hay (configurar plataformas, crear bases de datos, Interfaces, librerías, generar documentación) y buscar formas novedosas en el mundo digital para aprovechar al máximo los recursos mientras genera la solución.

La investigación como herramienta clave en el desarrollo tecnológico
 Además, debe ser capaz de fundamentar las decisiones que toma en cada paso del proceso de desarrollo utilizando datos concretos para llevar a buen término su proyecto, y el mejor apoyo para lograrlo, es por medio de un pilar básico para muchas ciencias: la investigación.
Por lo tanto, un Ingeniero de Software, no solo aplica conocimiento existente, sino que crea sistemáticamente conocimiento nuevo para resolver problemas que incluso nunca se habían presentado.
Así, los algoritmos (entendidos como una serie de pasos para resolver un problema) y su optimización, son más importantes que la propia implementación porque su elección implica el uso de pruebas rigurosas y procedimientos establecidos para determinar cuál es la mejor opción y finalmente programar el algoritmo de solución.

Algoritmos que cambiaron el mundo
A lo largo de la historia han destacado algunos investigadores por sus contribuciones en la computación distribuida, el aprendizaje automático, computadoras cuánticas, y otras áreas más.
Por ejemplo, Edsger Wybe Dijkstra hizo grandes aportaciones con algoritmos para grafos y semáforos en la sincronización de procesos.
El algoritmo de grafos es usado por Waze y Maps para encontrar la ruta más corta combinándolo con el algoritmo A*, registrado por Peter Hart, Nils Nilsson y Bertram Raphael.
Por su lado, David E. Rumelhart, Geoffrey Hinton y Ronald J. Williams crearon el algoritmo de retropropagación utilizado en el entrenamiento de redes neuronales (lo que coloquialmente se llama inteligencia artificial); Yann LeCun ha hecho aportaciones en la visión computacional y otras áreas de la robótica, y así, hay muchos otros científicos que, gracias a la investigación, propusieron algoritmos, técnicas o procesos que dieron origen a mejoras en diversas áreas de las ciencias computacionales.

Pensamiento crítico y análisis de datos: habilidades esenciales
Entonces, el pensamiento crítico, el desarrollo de sistemas sustentados en el análisis de datos y la metodología rigurosa que exige la investigación, le otorgan al ingeniero de Software las bases para contribuir con soluciones que podrán mejorar un sector social, productivo, académico o cualquier otra área pública o privada para dejar huella como hicieron otros grandes científicos de la computación. ¿No te gustaría llegar a ser como ellos?

Deja un comentario