Advertencia

Esta es una traducción NO OFICIAL. La hago sólo para compartir con nuestros lectores una opinión que me parece sumamente importante sobre el futuro de nuestra profesión.

Algunos de los enlaces de referencia podrían estar caídos.

Aquí está el artículo original en inglés

¡ANTES DE COMENZAR! El artículo es de hace un par de años, sin embargo, los nuevos programas que han surgido y que se autodenominan como "ingeniería de software" adolecen de los mismos problemas que se exponen. Peor aún, algunos de esos programas han dado un enorme paso hacia atrás eliminado materias importantes relacionadas con computación.

Ninguna universidad colombiana enseña ingeniería de software. Realmente. Ninguna.

La ingeniería de software y las ciencias de la computación han tenido un rol muy importante en las más recientes innovaciones que han cambiado la forma en que vivimos: la cohetería, la Internet, los teléfonos móviles, los motores de búsqueda, la masificación de los viajes aéreos, etc [1]. De hecho, el 92% de las compañías estadounidenses de software más grandes empezaron en 2003 y tienen una persona que trabaja con tecnología como co-fundador [2]. Cualquier nación que tenga esperanzas de seguir siendo competitiva debe tener grandes ingenieros de software. Por extraño que parezca, ninguna universidad en Colombia enseña ingeniería de software o ciencias de la computación. Es imposible ir a una universidad colombiana para convertirse en ingeniero de software.

¿Cómo permitió Colombia que esto pasara?

Foto tomada de Torrenegra Flickr (CC BY)


Por décadas, las universidades colombianas han dictado algo llamado "ingeniería de sistemas". La ingeniería de sistemas es "un campo interdisciplinario de la ingeniería que se enfoca en cómo diseñar y manejar sistemas complejos de ingeniería a través de sus ciclos de vida (...) Cubre disciplinas técnicas y humanistas como la ingeniería de control, la ingeniería industrial, estudios organizacionales y manejo de proyectos". [3] Cuando las ciencias de la computación y la ingeniería de software se hicieron mundialmente populares, muchas universidades colombianas no lanzaron esos programas de pregrado. En vez de eso, optaron por adaptar sus currículos existentes para incluir más clases sobre desarrollo de software y computadores. Era más fácil adaptar sus programas existentes que perdirle autorización al gobierno para lanzar nuevos programas de pregrado. Avanzado el tiempo hasta el día de hoy- si estás en Colombia y quieres ir a la universidad para estudiar ciencias de la computación o ingeniería de software, tendrás que conformarte con una ingeniería de sistemas.

Algunas universidades han añadido la frase "y computación" al nombre del grado obtenido, quedando así "ingeniero de sistemas y computación". Sin embargo, parece algo improvisado. Con suerte ingeniero de sistemas colombiano verá alrededor del 70% de las clases que un ingeniero de software vería. El otro 30% está empaquetado con finanzas, negocios y administración [4][5][6]. Y esto está mal. Aunque esta no sea una afirmación completamente soportada en las estadísticas, mi percepción luego de haber entrevistado cientos de ingenieros de sistemas en Colombia, es que la mayoría de ellos quieren convertirse en gerentes de proyectos. Su máximo logro profesional es manejar a otras personas. No quieren programar nada por si mismos. Incluso ven por encima del hombro a aquellos ingenieros que tienen que "tirar código". De hecho, parecen ignorar que -por lo menos Sillicon Valley- los desarrolladores de software ganan más que los gerentes de proyectos.

Los ingenieros de sistemas colombianos saben de software, hardware, diseño, administración de redes y mucho más. Sin embargo, pocos de ellos son capaces de contribuir en proyectos globales de código libre. De hecho, y muy desafortunadamente, Colombia es uno de los países menos activos en GitHub [7][8] Colombia está formando muchos generalistas (personas que saben algo de muchos temas), pero no está formando expertos. Como decimos en Colombia, "tenemos mucho cacique y poco indio".

Obviamente, las empresas colombianas que necesitan ingenieros de software tienen problemas. Algunas empresas ni siquiera saben a quién contratar [9]. Otras terminan contratando ingenieros de todo tipo, incluyendo ingenieros electrónicos, ingenieros industriales, y por supuesto, de ingenieros de sistemas. Los pocos que queremos competir a nivel mundial, como Bunny Inc., tenemos muchas dificultades para encontrar talentos. De hecho, tuvimos que desarrollar nuestras propias pruebas para identificar grandes ingenieros que han ido más lejos de lo que sus universidades les han enseñado. Desafortunadamente, pero no sorpresivamente, esas pruebas son bastante largas.

¿Qué puede hacerse para empezar a tener más ingenieros de software en Colombia? He intentado contactar con algunas facultades de ingeniería de varias universidades colombianas. Lamentablemente, no responden. A diferencia de otros países, las universidades en Colombia no cooperan con el sector privado. ¿Quizá sea hora de construir una nueva escuela de ciencias de la computación y la ingeniería de software en Colombia? ¿Quizá deberíamos olvidarnos de las universidades y, en vez de eso, tomar el camino de la educación virtual? Aún no tengo una respuesta clara. ¿Qué piensan ustedes? Ojalá, en un futuro no muy lejano, los expertos colombianos en tecnología dejen de soñar con convertirse en los jefes de otras personas y empiecen a soñar con volverse expertos reconocidos mundialmente. Sólo en ese momento Colombia será capaz de innovar mundialmente y hacer realidad todos sus sueños de convertirse en un centro de emprendimientos tecnológicos [10].

Nota: He actualizado el título de este artículo gracias a la retroalimentación de muchos lectores.

P.D. Tenemos grandes oportunidades para fuertes ingenieros (de software). https://bunnyinc.com/

P.P.D. Gracias a Francisco Padilla, David Montaño, Carlos Beltrán, Germán González, Mesi Rendón, Abelardo Duarte, Tara Tyler, y Omar Duque por darme, leer y comentar los borradores de este artículo.

P.P.P.D. Gracias a Jorge Vargas, aprendí mucho en su artículo relacionado con este tema. Vale realmente la pena leerlo: Una Propuesta para Afrontar la Crisis de la Carrera de Ingeniería de Sistemas. Y gracias a Camilo Aguilar, por este otro artículo: Un desarrollador de 20 millones mensuales.

Autor: Alex Torrenegra

Traducción no oficial: Daniel Cañizares