COMPETENCIAS NECESARIAS POR LOS EGRESADOS DE INGENIERÍA DE SISTEMAS EN EL ÁMBITO LABORAL Juan Camilo Fandiño Orjuela jfandin74270@universidadean.edu.co Universidad EAN Resumen El presente documento plantea un estudio descriptivo sobre las competencias con las que debe contar un ingeniero de sistemas que pretenda desempeñarse en el área de desarrollo de software, esto debido a que actualmente existe una alta demanda de profesionales pero al mismo tiempo una brecha de pertinencia en el sector. La investigación utilizó un enfoque cualitativo donde se identificaron las habilidades requeridas por los ingenieros a través de entrevistas semi-estructuradas realizadas a trabajadores de tres empresas de desarrollo de software. Así mismo, también se efectuó una consulta de material bibliográfico que dio lugar a un estudio comparativo entre diez instituciones de educación superior tanto a nivel nacional como internacional. Como resultado general, se encontró que entre las competencias más requeridas por la industria existen habilidades blandas y técnicas, más específicamente se buscan: habilidades de comunicación, aprendizaje autónomo, habilidades de desarrollo y de gestión de proyectos, las cuales a pesar de estar siendo incluidas en muchos programas académicos aún presentan deficiencias en sus contenidos. Introducción En la actualidad la demanda de ingenieros de sistemas, computación o afines tanto a nivel global como a nivel nacional es sumamente alta, prueba de ello es la necesidad de alrededor de 80.000 profesionales de sistemas únicamente en Colombia (SCI, 2020). Si bien la academia oferta distintos programas académicos orientados a satisfacer esta escasez, hasta el momento existen alrededor de 457 programas de ingeniería de sistemas o programas afines a nivel nacional (SNIES, 2022). Ahora bien, aunque este número pareciera ser bastante alto, en el país se gradúan únicamente 5.500 ingenieros de sistemas al año (Orduz, 2022). Sumado a ello, la Asociación Colombiana de Facultades de Ingeniería, sostiene que “La calidad en la formación de los ingenieros de sistemas, informática, computación y afines que hay en la oferta del país, pasa por una crisis bastante importante de contextualización frente a la realidad global de lo que es el ingeniero que trabaja en el área de tecnologías de información y comunicaciones” (ACOFI, 2018), lo que traduce en una desconexión entre las competencias impartidas por las universidades y las requeridas por la industria. De acuerdo con lo anterior surge la necesidad de indagar en las competencias requeridas por el mercado, de forma que los egresados de ingeniería de sistemas logren incorporarse en el ámbito laboral y se supla la demanda de profesionales, resultando así la siguiente pregunta: ¿Cuáles son las competencias de un recién egresado de ingeniería de sistemas que son requeridas por las empresas de desarrollo de software? Ahora bien, con el fin de resolver dicha pregunta se plantearon los siguientes objetivos: - Objetivo General Identificar las competencias de un recién egresado de ingeniería de sistemas que son requeridas por las empresas de desarrollo de Software. - Objetivos Específicos o Realizar un estudio comparativo de la oferta de cinco programas académicos de ingeniería de sistemas a nivel nacional y cinco programas a nivel internacional. http://jfandin74270@universidadean.edu.co/ o Identificar el conjunto de habilidades, conocimientos y competencias requeridas por tres empresas de desarrollo de Software. o Proponer las competencias requeridas por las empresas de desarrollo de software de forma que se articulen con la academia y con las necesidades del mercado vigente. Marco de Referencia - Competencias La palabra “Competencia” es un término utilizado para referirse a la “capacidad para el desarrollo de una actividad”. Sin embargo, el Dr. Sergio Tobón, psicólogo experto en educación por competencias, ofrece una explicación mucho más pertinente para este concepto, pues lo define como un saber hacer, en donde están inmersos los atributos necesarios para el desempeño en situaciones diversas donde se combinan conocimiento, actitudes, valores y habilidades con las tareas que se tienen que desempeñar en determinadas situaciones (Tobón, 2005). Por otro lado, autores más recientes definen competencia como “una capacidad integral para actuar apropiadamente en situaciones complejas. La capacidad de actuar incluye el conocimiento técnico, también llamado conocimiento fáctico. La capacidad para hacer frente a situaciones complejas y nuevas. También presupone habilidades adicionales, que a menudo se subdividen en competencia social, personal y metodológica” (Sedelmaier & Landes, 2015). - Habilidades blandas Ahora bien, es importante mencionar que existen dos categorías de competencias, las cuales aunque en español son conocidas con el termino de “habilidades”, realmente pueden ser categorizadas e incluidas como competencias según las definiciones vistas anteriormente, estas dos categorías son: habilidades “blandas” y “técnicas”. Las habilidades blandas son una “amplia gama de características que involucran tipos de personalidad, habilidades de interacción social, comunicación y hábitos personales. Las habilidades blandas comprenden la individualidad personal, lo que tiene un gran impacto en el comportamiento de una persona mientras interactúa con otros en un entorno de trabajo (Ahmed, Capretz, Bouktif, & Campbell, 2013). - Habilidades técnicas Las habilidades técnicas o “hard skills” como se les conoce en inglés, suelen comprenden las competencias que se adquieren principalmente en el plan de estudios académico (por ejemplo, en el aula, a través de libros, etc.), estas habilidades provienen del conocimiento específico y normalmente pueden ser probadas y/o cuantificadas (Akdur, 2021). - Competencias de ingeniería de software Ahora bien, cuando hablamos de ingeniera de sistemas y programas afines, podemos delimitar el termino y adoptar una definición especifica de competencias para la ingeniería de software, definiéndolas como “Un conjunto completo de habilidades, destrezas, conocimientos, y las capacidades necesarias para participar en una actividad de desarrollo de software efectivamente'' (Assyne, Ghanbari, & Pulkkinen, 2022). Este conjunto de habilidades fue demarcado por los mismos autores, en donde se pueden apreciar alrededor de 49 competencias esenciales, las cuales fueron categorizadas según su tema y tipo en la siguiente tabla: Tabla 1. Competencias de ingeniería de software esenciales. Competencias Nombre del tema Tipo de competencia Escribe/automatiza pruebas con código, aprovecha/reutiliza el código, usa la lectura de código, usa técnicas estructuradas para la comunicación. Habilidades de programación/codificación: habilidades esenciales para realizar la función de codificación en el desarrollo de software. Conocimientos técnicos Habilidades/técnicas para el diseño de arquitectura, uso de prototipos para evaluar el diseño, posee conocimiento del dominio, obtiene la formación/aprendizajes necesarios, experiencia con un proyecto similar, conocimientos técnicos, usos de métodos para la resolución de problemas, uso de nuevos métodos y herramientas, fuertes habilidades analíticas, usa técnicas y herramientas, competencias metodológicas, pensamiento analítico. Habilidades de analizador de problemas: habilidades esenciales para cumplir con los requisitos y analizar problemas en el desarrollo de software. Conocimientos técnicos Programa y estima bien, responde a programar bajo presión sacrificando partes del proceso de diseño, habilidades organizativas Habilidades de gestión de proyectos: habilidades esenciales para administrar cronogramas en el desarrollo de software Habilidades interpersonales Orientado al equipo, relación interpersonal. Habilidades de trabajo en equipo: habilidades sociales blandas esenciales necesarias para realizar desarrollos de software en equipo Habilidades interpersonales Rol proactivo con la gerencia, ayuda a los demás, intercambio de información, voluntad de confrontar otros, escalabilidad. Habilidades de liderazgo: habilidades blandas o sociales esenciales para desempeñar un papel de liderazgo en el desarrollo de software. Habilidades interpersonales Buena comunicación escrita, buena comunicación verbal, reflexión Habilidades de comunicación: una habilidad social blanda, esencial para realizar comunicaciones en desarrollos de software. Habilidades interpersonales Se centra en las necesidades de los usuarios o las necesidades del cliente. Habilidades orientadas al cliente: habilidades sociales blandas esenciales para llevar a cabo las relaciones con los clientes en el desarrollo de software. Habilidades interpersonales Habilidades de pensamiento creativo, ser innovador, atención al detalle, deseo de mejorar las cosas, estilo de diseño Habilidades creativas: habilidades personales blandas esenciales para la creación de innovación en el desarrollo de software Rasgos de personalidad Perseverancia, proactivo/iniciador/conductor, sin ego, impulsado por el deseo de contribuir, deseo de hacer/sesgo por acción, sentido de la diversión, impulsado por un sentido de misión, mezcla objetivos personales y laborales, minuciosidad, busca ayuda. Habilidades de autoestima: atributo personal blando esencial de un individuo para evaluar su valor propio en el desarrollo de software Rasgos de personalidad Mantiene una vista de "panorama general", amplitud de vista e influencia, soluciones simples y elegantes. Habilidades esenciales: un atributo personal blando esencial de un individuo para realizar abstracción en el desarrollo de software. Rasgos de personalidad Calidad y productividad Habilidades de control de calidad— habilidades de control de calidad. Rasgos de personalidad Fuente: Adaptado de (Assyne et al., 2022)“The state of research on software engineering competencies: A systematic mapping study”. - Competencias de ingeniería de software en Colombia Las competencias necesarias para desempeñarse como desarrollador de software en Colombia están demarcadas por el catálogo nacional de cualificaciones, el cual es “el instrumento que permite estructurar y clasificar las cualificaciones en un esquema de ocho (8) niveles ordenados y expresados en términos de conocimientos, destrezas y actitudes, aplicables en contextos de estudio, trabajo o en ambos, de acuerdo con la secuencialidad y complejidad de los aprendizajes que logran las personas en las diferentes vías de cualificación” (Mineducación, 2020a). En este instrumento, se detallan las competencias específicas que deben tener un profesional para desempeñarse en el área de desarrollo de software, las cuales son: o Analizar los requisitos para el desarrollo del software, teniendo en cuenta los lineamientos y estándares de la industria. o Diseñar software de acuerdo con los requisitos de la organización y los estándares de la industria o Programar el software de acuerdo con las especificaciones del diseño de la solución, los requisitos de la organización y los estándares de la industria. o Probar la solución del software de acuerdo con los requisitos de la organización, los modelos de referencia y los estándares de la industria. o Implementar la solución de software teniendo en cuenta los requisitos, la capacidad tecnológica de la organización y los estándares de la industria (Mineducación, 2020b). - Ingeniería de sistemas En el área del STEM (Science, Technology, Engineering and Mathematics), se conoce a la ingeniería de sistemas como un “enfoque metódico y multidisciplinario para el diseño, la realización, la gestión técnica, las operaciones y el retiro de un sistema. Un “sistema” es la combinación de elementos que funcionan juntos para producir la capacidad requerida para satisfacer una necesidad. Los elementos incluyen todo el hardware, software, equipo, instalaciones, personal, procesos y procedimientos necesarios para este fin” (NASA, 2019) - Ingeniería de software Por otro lado, es importante mencionar que existe otra disciplina paralela a la ingeniería de sistemas, conocida como “Ingeniería de software”, esta ingeniería está definida como la aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento del software; es decir, la aplicación de la ingeniería al software” (International Organization for Standardization, 2017) - Desarrollo de Software Según IBM el “El desarrollo de software se refiere a un conjunto de actividades informáticas dedicadas al proceso de creación, diseño, despliegue y compatibilidad de software…El desarrollo de software lo llevan a cabo principalmente programadores, ingenieros de software y desarrolladores de software. Estos roles interactúan y se superponen, y la dinámica entre ellos varía mucho entre los departamentos y comunidades de desarrollo” (IBM, 2022) - Brecha entre la formación académica y la empresa La discrepancia existente entre la formación académica y las necesidades de la industria es un fenómeno que se ha venido evidenciando desde hace varios años, específicamente en el área del desarrollo de software, en donde se han efectuado diversos estudios que han buscado comprender esta situación más a fondo. Un ejemplo de ello es un estudio realizado a nuevos desarrolladores que se incorporaron a Microsoft, en donde se encontró que “los estudiantes que ingresan a la fuerza laboral directamente de la capacitación universitaria a menudo no tienen el conjunto completo de habilidades de desarrollo de software que necesitarán para ser productivos, especialmente en las grandes empresas de desarrollo de software” (Begel & Simon, 2008). - Brechas de pertinencia Las brechas de pertinencia se relacionan con la falta de participación de la industria en la etapa de diseño y planeación de los diferentes programas académicos. Esta se halla al listar las competencias requeridas por el sector productivo y las competencias en las que forman los programas académicos, para posteriormente realizar un estudio comparativo entre ambos hallazgos (Mineducación, 2020). - Brechas de calidad. Esta brecha se genera cuando los contenidos de los programas educativos aunque si corresponden (en su mayoría) a las competencias requeridas por la industria, aun así evidencian ciertas carencias. (Mineducación, 2020). Ahora bien, es importante mencionar que según el ministerio de educación, el área en donde existe una mayor brecha de calidad es en el sector del Desarrollo de software, además, de manera igualmente relevante también se incluyen muchas habilidades blandas que si bien ya se están volviendo parte de los programas académicos, aun no se imparten de manera holística o integral, generando así una formación incompleta. - Brechas de cantidad Las brechas de cantidad están asociadas con el déficit (y/o ausencia) de ofertas de programas educativos, el déficit de demanda por programas y con la baja capacidad de atracción (o retención) de capital humano relevante por parte de un sector específico (Mineducación, 2020b). En esta categoría se menciona nuevamente el área de desarrollo de software, la cual también se encuentra categorizada dentro de este tipo de brecha, lo que permite concluir que el objeto de esta investigación (comprendido por este sector de la industria) presenta una brecha de todos los tipos, lo que acentúa aún más la pertinencia de esta investigación. - Formación Profesional Dual La “Formación profesional dual”, originada en Alemania, es una modalidad de aprendizaje que se basa eminentemente en el trabajo práctico. Con una duración de entre dos y tres años, esta modalidad se divide en fases, en las cuales cada semana pasará uno o dos días en una escuela de formación profesional. Allí, la academia le transmitirá los conocimientos teóricos, los demás días estará en una empresa, donde aplicará los conocimientos aprendidos. Este tipo de educación sostiene que “No solo interesan los conocimientos teóricos en la materia, sino que también hace falta práctica y experiencia en la aplicación de estos conocimientos” (Gobierno federal alemán, 2021). Metodología - Enfoque de la investigación La investigación que se desarrolla en el presente proyecto es de tipo cualitativa-descriptiva dado que se especifican las competencias requeridas por los egresados de ingeniería de sistemas en el ámbito laboral, lo que lleva a describir su perfil académico y profesional. Así mismo, únicamente se recopila información sobre la materia, mas no se indaga sobre posibles relaciones entre los datos encontrados. - Diseño de la investigación Con el fin de responder la pregunta problema y cumplir con los objetivos propuestos, se opta por una investigación no experimental, dado que para estudiar el fenómeno planteado no hace falta manipular ningún tipo de variable, si no que por el contrario, se observará la situación tal como se presenta naturalmente. Ahora bien, también es importante mencionar el diseño será de tipo Transversal (también llamado transeccional), pues la recolección de datos se hizo en un momento específico y no se indagó o analizó ningún cambio a lo largo del tiempo. - Población Según los objetivos de la investigación se tuvo en cuenta tanto a la academia, como a la industria. En primer lugar, en cuanto a la academia, se establecen como unidades de análisis a los programas de ingeniería de sistemas o programas afines ofertados por las instituciones de educación superior (tanto a nivel nacional como internacional), número que en Colombia asciende a un total de 457 (SNIES, 2022), y en el mundo a un total de 651 registradas y con validez internacional (Quacquarelli Symonds, 2021). Por otro lado, con respecto a la industria, las unidades de análisis son las empresas de desarrollo de software, las cuales según las últimas estadísticas del ministerio de las TIC son aproximadamente 772 (MINTIC, 2015) únicamente en Colombia. - Muestra El tamaño de la muestra para la academia fue calculado de forma probabilística, este se determinó a partir del tamaño de la población, un nivel de confianza del 80% (Z=1,280) y un error máximo del 20%, dando como resultado una muestra de 10 programas de ingeniería de sistemas o afines. Ahora bien, es importante resaltar que la elección de estos programas se realizó de forma aleatoria, entre la lista de programas y universidades, esto con el fin de asegurar que todos los elementos de la población tuvieran la misma posibilidad de ser elegidos, y exista una mayor capacidad de generalización. A continuación, se encuentra la formula (Ecuación 1) utilizada para su cálculo: 𝑛 = (1108)∗(1,280)2∗(0,50)∗(0,50) (0,20)2∗(1108−1)+(1,280)2∗(0,50)∗(0,50) = 10.16 ≈ 10 (𝟏) Por otro lado, para el caso de la industria, la muestra es de tipo no probabilística y constó de 3 empresas de desarrollo de software, lo que permitió un análisis más exhaustivo, teniendo en cuenta factores como el costo y la duración de la investigación. Las empresas fueron escogidas dada su disponibilidad a lo largo de la investigación. - Consulta de material bibliográfico La primera técnica utilizada para la recolección de información fue la consulta de material bibliográfico, la cual consistió en la revisión de la documentación existente (analizada a través de un estudio comparativo). Para su aplicación se diseñó y empleo el siguiente instrumento: Tabla 2. Instrumento para el desarrollo del estudio comparativo. Universidad Ubicación Carácter Académico Sector Programa Nivel de Formación Modalidad Periodicidad Duración Costo Perfil del egresado Competencias desarrolladas Fuente: Elaboración propia. - Entrevistas La entrevista aplicada fue “semi-estructurada”, pues si bien se utilizó una “Guía de Entrevista”, se concedió el espacio para preguntas adicionales, lo que permitió precisar conceptos y obtener más información. A continuación se exponen las preguntas contenidas en el instrumento: Tabla 3. Preguntas contenidas en la guía de entrevista. Pregunta ¿En qué área se desempeña? / ¿Qué cargo ocupa dentro de la organización? ¿En la organización se emplea a profesionales recién egresados? ¿Actualmente la organización se encuentra en la contratación de nuevo personal? ¿Conoce usted qué cargos están buscando actualmente? Específicamente, en el área de desarrollo de software, cual es el perfil de profesional que buscan? ¿Qué competencias, habilidades y conocimientos debe poseer? De manera general, ¿Qué habilidades, competencias o conocimientos considera usted que son las más importantes en la industria del software? ¿Existen ciertas habilidades, capacidades o conocimientos de la que carecen los profesionales recién graduados que les impide obtener empleo? ¿Y si es así cuáles son? ¿En qué medida son importantes las habilidades blandas, además de las habilidades duras (técnicas)? Fuente: Elaboración propia. Resultados - Estudio comparativo de la oferta de cinco programas académicos de ingeniería de sistemas a nivel nacional y cinco programas a nivel internacional Con el fin de conocer las competencias impartidas por la academia se realizó una consulta de material bibliográfico concerniente a las universidades que impartían programas de pregrado relacionados al área de la ingeniería de sistemas. En el ámbito nacional esta búsqueda se realizó a través del portal del Sistema Nacional de Información de la Educación Superior (SNIES) el cual permite exportar una hoja de cálculo con la información de todos los programas afines. Por otro lado, en cuanto al sector internacional se recurrió al ranking de universidades de Quacquarelli Symonds, el cual también permite generar una hoja de cálculo con los programas especificados. Posteriormente, se seleccionó aleatoriamente la muestra a partir de ambos compilados previos. A continuación se exponen las instituciones de educación superior resultantes. Tabla 4. Muestra para la consulta del material bibliográfico. Institución de educación superior Programa Universidad Tecnológica de Pereira - UTP Ingeniería de Sistemas Y Computación Corporación Universitaria de Santa Rosa de Cabal Ingeniería de Sistemas Universidad Pontificia Bolivariana Ingeniería de Sistemas E Informática Universidad del Cauca Ingeniería de Sistemas Universidad de Antioquia Ingeniería de Sistemas RMIT University Bachelor of Computer Science University of Porto Bachelor of Computer Science Massachusetts Institute of Technology (MIT) Bachelor of Science in Computer Science Universidad Nacional de la Plata Licenciatura en Informática Brunel University London Bachelor of Computer Science Fuente: Elaboración propia. Consecutivamente, esta información fue consignada en el instrumento de investigación correspondiente, para luego ser analizada a través del software Atlas.ti, el cual es un programa para el análisis cualitativo de los datos. Mediante el uso del software, las habilidades, conocimientos y competencias fueron categorizadas mediante el uso de “códigos”, los cuales son etiquetas que permiten clasificar fragmentos de información (citas). Los códigos presentados a continuación representan las competencias en las que la academia afirma formar a sus estudiantes: Tabla 5. Competencias codificadas según su tipo. Tipo Código Tipo Código H ab il id ad es T éc n ic as Análisis de Requisitos H ab il id ad es B la n d as Aprendizaje Autónomo Análisis de Resultados Ética y Profesionalismo Bases de Datos Habilidades de Comunicación Cloud Computing Inglés Desarrollo Innovación DevOps Inteligencia Interpersonal Diseño Inteligencia Intrapersonal Fundamentos en informática Liderazgo Fundamentos en Matemática Trabajo Autónomo Inteligencia Artificial Trabajo en Equipo Mantenimiento Optimización Project Management Software Testing Resolución de Problemas Fuente: Elaboración propia. Inmediatamente, mediante la herramienta de “reporte” se logró obtener las principales competencias descritas en los documentos analizados: Figura 1. Diez principales competencias impartidas por la academia Fuente: Elaboración propia (Generado a través de Atlas.ti) Al analizar el grafico y las citas de donde cada uno de los códigos fue extraído podemos encontrar las siguientes particularidades: o De las diez principales competencias, únicamente tenemos dos que son clasificadas como habilidades blandas: Trabajo en equipo y Ética. o El desarrollo de software si bien es mencionado ampliamente en el estudio comparativo, nunca es asociado con un lenguaje de programación específico. o La gestión de proyectos (Project management) se ha vuelto uno de los principales conjuntos de habilidades y conocimientos en los que la academia pretende formar a los profesionales, esto teniendo en cuenta que el resto de la malla curricular y orientación académica va enfocada a la aplicación de temas directamente relacionados con las ciencias de la computación. o Parece que las instituciones de educación superior coinciden en que las competencias mínimas con las que debe contar un profesional en el área son: diseño, desarrollo, gestión de proyectos y análisis de requisitos. Por otro lado, las demás competencias suelen ser particulares a la institución y el detalle del plan de estudio. Ahora bien, teniendo en cuenta las sub-división de los códigos según el tipo de competencia/habilidad y no limitándonos únicamente a las principales competencias tenemos que: Tabla 6. Competencias codificadas como habilidades técnicas según su porcentaje de aparición. Código % de aparición Código % de aparición Diseño 21,59 Software Testing 4,55 Desarrollo 20,45 Optimización 4,55 Project Management 17,05 Bases de Datos 4,55 Análisis de Requisitos 10,23 Fundamentos en Matemáticas 3,41 Resolución de Problemas 9,09 Análisis de Resultados 3,41 Fundamentos en informática 9,09 Inteligencia Artificial 2,27 Mantenimiento 7,95 Cloud Computing 1,14 DevOps 6,82 Fuente: Elaboración propia. Al analizar los anteriores resultados podemos encontrar las siguientes características: o Conocimientos técnicos especializados tales como: Cloud Computing, Inteligencia Artificial y Bases de datos, son apenas mencionados en la mayoría de los documentos analizados, lo que podría indicar una baja especialización en las habilidades impartidas o una inclusión muy superficial de dichos contenidos. o Las habilidades técnicas para la implementación, entrega y publicación del software desarrollado, también conocidas como DevOps (Development Operations), si bien son incluidas dentro de las competencias que un egresado de ingeniería de sistemas o afines debería tener, no son incluidas en todos los programas, siendo apenas un 7% aproximadamente la frecuencia de aparición de esta competencia. Por otra parte, en cuanto a las habilidades blandas listadas por frecuencia de aparición tenemos: Tabla 7. Competencias codificadas como habilidades blandas según su porcentaje de aparición. Código % de aparición Código % de aparición Ética y Profesionalismo 9,09 Innovación 3,41 Trabajo en Equipo 9,09 Inteligencia Interpersonal 2,27 Aprendizaje Autónomo 5,68 Inglés 1,14 Habilidades de Comunicación 4,55 Inteligencia Intrapersonal 1,14 Trabajo Autónomo 4,55 Liderazgo 1,14 Fuente: Elaboración propia. A partir de la información anterior podemos observar: o Si bien los valores parecen ser esenciales para la academia (véase la frecuencia de aparición del código “Ética y profesionalismo”), otras competencias como el dominio del idioma inglés o las habilidades de comunicación (incluyendo comunicación verbal y escrita) las cuales son necesarias para la ejecución de muchas de las habilidades técnicas, son mencionadas con mucha menos frecuencia. o El liderazgo apenas fue mencionado como una de las competencias adquiridas por los profesionales de los programas estudiados, teniendo en cuenta que una de las habilidades técnicas más mencionadas fue la gestión de proyectos, en donde el liderazgo juega un papel fundamental. - Incorporación de experiencias de aprendizaje en la industria Finalmente, es importante mencionar que también se recabo información adicional que se consideró pertinente al estudio, un ejemplo de ello fue la incorporación de programas que involucraban experiencias de aprendizaje con la industria, lo cual se considera como un avance en cuanto a la disminución de la brecha entre las competencias impartidas por la academia y las requeridas por la industria. A continuación se mencionan cuales fueron dichas instituciones: Tabla 8. Universidades con competencias de aprendizaje prácticas. Universidad Experiencia de aprendizaje Universidad de Antioquia Semestre de Industria: Experiencia laboral dirigida que realiza un estudiante en una empresa o entidad dentro o fuera del país. RMIT University En último semestre, se emprende un proyecto que simula un entorno industrial. Aquí́, se aplican las habilidades en el desarrollo de aplicaciones de software a gran escala. MIT El programa 6-A: Asociación entre el MIT y algunas de las empresas más innovadoras del mundo. Permite a los estudiantes emprender un proyecto industrial de vanguardia mientras trabajan simultáneamente para completar su tesis. Brunel University London Los estudiantes tienen la oportunidad de realizar una pasantía de un año entre su segundo y tercer año. Lo que le permitirá adquirir experiencia real y remunerada dentro de la industria. Fuente: Elaboración propia. - Entrevistas Con el fin de identificar el conjunto de conocimientos, habilidades y competencias requeridas por las empresas de desarrollo de software se aplicó una entrevista semi-estructurada a trabajadores de distintas empresas de desarrollo de software a nivel nacional e internacional, estas entrevistas fueron realizadas en su totalidad de manera virtual utilizando distintas herramientas de videollamada tales como Zoom o Google Meet. Las empresas que fueron incluidas en el estudio, su ubicación y el tipo de personal entrevistado se encuentran relacionados en la siguiente tabla: Tabla 9. Empresas incluidas en el estudio. Empresa / Organización Tipo de personal entrevistado Ubicación Claro – Empresa de telecomunicaciones Gerente De Desarrollo Y Operaciones (Segmento Personas) Bogotá, Colombia. / Presencia multinacional. Puzzle Tech Recruitment Personal de recursos humanos (IT Recruiter) Atlanta, EE.UU. / Centroamérica y El Caribe Ilumno Software Architecture Manager Bogotá, Colombia. / Miami EE.UU / Ámsterdam, Holanda Fuente: Elaboración propia. Consecutivamente, los resultados fueron analizados mediante Atlas.ti en donde las competencias fueron categorizadas mediante el uso de códigos. Los códigos presentados a continuación representan las competencias identificadas: Figura 2. Competencias codificadas según su porcentaje de aparición. Fuente: Elaboración propia. 0 2 4 6 8 10 12 Porcentaje de aparición Al analizar el anterior gráfico, la tabla anteriormente expuesta y las citas de donde cada uno de los códigos fue extraído podemos encontrar las siguientes particularidades: o Las habilidades de comunicación verbal y escrita se posicionan como la principal competencia requerida por la industria, pues todos los entrevistados concuerdan que existen falencias en el discurso manejado por los recién egresados a la hora de comunicarse con clientes e incluso con miembros del equipo. o Si bien la academia suele reconocerse por formar principalmente en habilidades y conocimientos técnicos aún existen bastantes deficiencias en las competencias impartidas pues la mayor parte de las competencias solicitadas son precisamente de dicho ámbito. o Los participantes entrevistados recalcan la importancia de lenguajes de programación o frameworks específicos, tales como C# y Angular, no obstante, dado que la academia no brinda información específica acerca de estos aspectos es difícil contrastar la brecha presentada en este sector. Por otro lado, al analizar específicamente las habilidades blandas encontramos que: o El aprendizaje autónomo y continuo es ampliamente solicitado como una competencia esencial para alguien que se desempeñe en el área del desarrollo de software pues los entrevistados refieren que al ser la ingeniería de software un área en constante desarrollo y crecimiento es crucial que los egresados sean capaces de adaptarse a nuevas tecnologías. o El desarrollo de software es una tarea que involucra varias personas para lograr llevar a cabo la realización de grandes proyectos, por tal motivo, los entrevistados reiteran la capacidad que deben de tener los profesionales para trabajar en equipo y saber relacionarse con los demás. o El manejo del inglés si bien podría ser considerado por algunos como una habilidad técnica, se ha convertido en una competencia transversal requerida por muchas áreas de la industria, no únicamente en la de software. Ahora bien, dado que la carencia de ingenieros de sistemas es una problemática a nivel mundial, los entrevistados concuerdan en que el manejo del idioma será vital para una correcta inserción en el mercado laboral. Finalmente, al analizar únicamente la frecuencia de aparición de las competencias técnicas encontramos que: o Tareas de integración y desarrollo continuo, conocidas en conjunto como “DevOps” son ampliamente solicitadas en la industria pues se busca que los ingenieros sean capaces de poner a disposición de los clientes el software desarrollado, lo cual normalmente implica tareas de configuración de servidores e implementación de la solución en servicios en la nube. o Dada la transformación digital impulsada por la pandemia del COVID-19 se ha hecho evidente la necesidad de crear nuevas soluciones de software alojadas y orientadas al internet, una prueba de ello es la abundancia de frameworks y tecnologías de desarrollo web como Angular, NodeJS y Typescript, además de ello esto se evidencia en la cantidad de perfiles fullstack solicitados. Discusión Al comparar las competencias impartidas por las instituciones de educación superior con las requeridas por la industria se corroboró la brecha mencionada por la Asociación Colombiana de Facultades de Ingeniería (ACOFI, 2018), pues entre los resultados se encontró que si bien la mayor parte de las competencias que el mercado necesita están siendo incluidas en los planes académicos y ejes temáticos de las universidades, estas parecen carecer de la calidad y profundidad necesaria para que los recién egresados puedan desempeñarse satisfactoriamente en el área de desarrollo de software. Ahora bien, con el fin de lograr que la academia se articule con la industria, a continuación se propone una serie de competencias que deberían ser impartidas en las instituciones de educación superior de acuerdo con lo encontrado en la presente investigación: Tabla 10. Principales competencias requeridas por las empresas de desarrollo de software Tipo Competencia Tipo Competencia H ab il id ad es T éc n ic as Resolución de Problemas H ab il id ad es B la n d as Habilidades de Comunicación DevOps Resolución de problemas Gestión de proyectos Innovación C# (Lenguaje de desarrollo) Aprendizaje Autónomo Angular (Framework de Desarrollo) Inteligencia Interpersonal Desarrollo Full-Stack Liderazgo Fundamentos en informática Ética y profesionalismo Bases de Datos (SQL Y Oracle) Inglés Desarrollo Móvil Trabajo en Equipo Metodologías de Desarrollo (SCRUM) Habilidades de Ventas Fuente: Elaboración propia. Teniendo en cuenta la información expuesta tanto en los resultados y realizando un cotejo con la lista recién propuesta es importante recalcar la existencia de una brecha de calidad, específicamente en competencias como: habilidades de comunicación, resolución de problemas, innovación, gestión de proyectos, aprendizaje autónomo e inteligencia interpersonal, por nombrar algunas. Ahora bien, esto se convierte en un factor determinante para la inserción laboral de muchos egresados debido a que se ha encontrado que son precisamente este tipo de habilidades las que son significativamente más solicitadas por el mercado laboral, al menos para puestos de entrada. (Garousi, Giray, Tuzun, Catal, & Felderer, 2020). De igual manera, se hace una mención particular a competencias como: liderazgo e inteligencia intrapersonal dado que en el entorno colaborativo del desarrollo de software, la posesión de estas competencias aumenta la probabilidad de éxito de un individuo y contribuye positivamente al objetivo común de un proyecto (Ahmed et al., 2013). Agregando a lo anterior, podemos evidenciar que los resultados obtenidos se ajustan a estudios previos realizados en el país pues en Colombia las competencias más demandas son: Orientación al Cliente, Cooperación (Inteligencia Intrapersonal), Resiliencia (Inteligencia Interpersonal), SQL (Bases de Datos), Habilidades Gerenciales, Angular. (Mineducación, 2020b) Por otro lado, en cuanto a la brecha de pertinencia, es decir, a aquellas competencias que no están siendo incluidas por la academia, es importante tener en cuenta la ausencia (o falta de educación especifica) en metodologías de desarrollo de software, más específicamente el marco “SCRUM” el cual es usado por bastantes organizaciones del área, y por ende le es solicitado a los profesionales que desean incorporarse en ellas (Assyne et al., 2022). A propósito de estas competencias que no se encontraron en la academia es preciso mencionar que la industria está en constante cambio y crecimiento, por lo que hoy en día se requieren una combinación de habilidades y competencias nuevas que permitan suplir distintos roles y responsabilidades en la industria tecnológica (Gurcan & Kose, 2017), la aparición de la “Habilidades de Ventas” como competencia requerida en el área no es sino una prueba de ello. Por último, es importante resaltar que este estudio será más que una herramienta para la academia, sino que también contribuirá a los futuros egresados de ingeniería de sistemas ya que diversos estudios en la materia parecen coincidir en que la clave del éxito para que un profesional recién graduado consiga emplearse satisfactoriamente recae en que durante su formación académica los educadores aseguren que los estudiantes estén expuestos a las herramientas más comúnmente utilizadas en la industria del software (Radermacher, Walia, & Knudson, 2014). Conclusiones Las competencias requeridas por las empresas de desarrollo de software son un conjunto de conocimientos que van más allá de lo técnico y que cada día parecen involucrar más habilidades del ámbito gerencial y comercial de la industria. Por tal motivo, es de vital importancia que las instituciones académicas tanto a nivel nacional como internacional incorporen en sus planes de estudios las competencias descritas anteriormente, o, en el caso de que ya se encuentren integradas, que consideren replantear la metodología de enseñanza, contenidos programáticos e incluso la intensidad horaria con las que se imparte. Así mismo, es importante mencionar que la programación, entendida como el desarrollo y la resolución de problemas, es en conjunto la competencia más buscada en los ingenieros de sistemas. Pues aunque se considera como un conocimiento básico en el área, muchos empleados carecen de la habilidad y practica para llevar a cabos tareas nuevas o enfrentarse a los retos de la industria. Igualmente, la retroalimentación obtenida por varias de las personas entrevistadas permite vislumbrar que la formación brindada por otros medios de educación más informales, tales como cursos virtuales o pequeños talleres, fomentan la cantidad de trabajadores que carecen de esta competencia especifica, por lo que es fundamental la participación de la academia como agente formalizador del conocimiento. Por otro lado, la presente investigación permitió reconocer el papel del mismo egresado en su meta por la incorporación laboral en el área de desarrollo de software, pues si bien existe un conjunto de habilidades técnicas y blandas que deben ser impartidas por la academia, también se encontró que existen aspectos como el trabajo autónomo, la inteligencia interpersonal e intrapersonal que son competencias que requieren ser cultivadas por el propio profesional. Finalmente, es preciso señalar que este estudio se presenta como una aproximación inicial al tema, dado que las dimensiones que involucra esta área ameritan un estudio más profundo, esto con el fin de conocer aspectos que no fueron tenidos en cuenta tales como los frameworks o lenguajes de programación específicos impartidos por la academia. Por tal motivo, se considera pertinente y necesario continuar con la investigación pero no sin antes considerar nuevos instrumentos de investigación que permitan complementar la información aquí descrita. Referencias ACOFI. (2018). En Medellín Faltan Ingenieros de Sistemas. Retrieved February 13, 2022, from Asociación Colombiana de Facultades de Ingeniería website: https://www.acofi.edu.co/noticias/en-medellin-faltan-ingenieros-de-sistemas/ Ahmed, F., Capretz, L. F., Bouktif, S., & Campbell, P. (2013). Soft skills and software development: A reflection from software industry. International Journal of Information Processing and Management, 4(3), 171–191. https://doi.org/10.4156/ijipm.vol4.issue3.17 Akdur, D. (2021). Skills Gaps in the Industry: Opinions of Embedded Software Practitioners. ACM Transactions on Embedded Computing Systems, 20(5), 39. https://doi.org/10.1145/3463340 Assyne, N., Ghanbari, H., & Pulkkinen, M. (2022). The state of research on software engineering competencies: A systematic mapping study. Journal of Systems and Software, 185, 111183. https://doi.org/10.1016/j.jss.2021.111183 Begel, A., & Simon, B. (2008). Struggles of new college graduates in their first software development job. ACM SIGCSE Bulletin, 40(1), 226–230. https://doi.org/10.1145/1352322.1352218 Garousi, V., Giray, G., Tuzun, E., Catal, C., & Felderer, M. (2020). Closing the Gap between Software Engineering Education and Industrial Needs. IEEE Software, 37(2), 68–77. https://doi.org/10.1109/MS.2018.2880823 Gobierno federal Alemán. (2021). Formación profesional dual. Retrieved February 26, 2022, from Trabajar en Alemania website: https://www.make-it-in-germany.com/es/estudios- formacion/formacion-en-alemania/que-es/dual IBM. (2022). ¿Qué es el desarrollo de software? Retrieved February 13, 2022, from https://www.ibm.com/co-es/topics/software-development International Organization for Standardization. (2017). International Standard ISO/IEC/ IEEE 24765. Systems and Software Engineering — Vocabulary, 2017. Retrieved from https://www.iso.org/standard/71952.html Mineducación. (2020a). Marco Nacional de Cualificaciones. Retrieved March 26, 2022, from http://especiales.colombiaaprende.edu.co/mnc/definicion.html Mineducación. (2020b). Marco Nacional de Cualificaciones Colombia Sector TIC. 3. Retrieved from https://micrositios.mintic.gov.co/plan_tic_2018_2022/pdf/plan_tic_2018_2022_20191121.pdf MINTIC. (2015). Caracterización del sector teleinformática, software y TI en Colombia. NASA. (2019). Fundamentals of Systems Engineering. Retrieved February 13, 2022, from https://www.nasa.gov/seh/2-fundamentals Orduz, R. (2022). Déficit de ingenieros informáticos y superávit de mercenarios. Retrieved February 13, 2022, from Las2orillas website: https://www.las2orillas.co/deficit-de-ingenieros-informaticos- y-superavit-de-mercenarios/ Quacquarelli Symonds. (2021). QS World University Rankings for Computer Science and Information Systems 2021. Retrieved March 20, 2022, from Top Universities website: https://www.topuniversities.com/university-rankings/university-subject-rankings/2021/computer- science-information-systems Radermacher, A., Walia, G., & Knudson, D. (2014). Investigating the skill gap between graduating students and industry expectations. 36th International Conference on Software Engineering, ICSE Companion 2014 - Proceedings, (May), 291–300. https://doi.org/10.1145/2591062.2591159 SCI. (2020, December 17). En Colombia faltan 80.000 ingenieros informáticos. Retrieved February 13, 2022, from https://sci.org.co/en-colombia-faltan-80-000-ingenieros-informaticos/ Sedelmaier, Y., & Landes, D. (2015). SWEBOS – The Software Engineering Body of Skills. International Journal of Engineering Pedagogy (IJEP), 5(1), 20. https://doi.org/10.3991/IJEP.V5I1.4047 SNIES. (2022). Información Poblacional - SNIES. Retrieved February 13, 2022, from https://hecaa.mineducacion.gov.co/consultaspublicas/programas Tobón, S. (2005). Formación Basada en Competencias. Pensamiento complejo, diseño curricular y didáctica. In Ecoe Ediciones. Retrieved from http://bcnslp.edu.mx/antologias-rieb- 2012/preescolar-i-semestre/DFySPreesco/Materiales/Unidad A 1_DFySpreesco/RecursosExtra/Tob%F3n Formaci%F3n Basada C 05.pdf - Objetivo General Identificar las competencias de un recién egresado de ingeniería de sistemas que son requeridas por las empresas de desarrollo de Software. - Objetivos Específicos o Realizar un estudio comparativo de la oferta de cinco programas académicos de ingeniería de sistemas a nivel nacional y cinco programas a nivel internacional. o Identificar el conjunto de habilidades, conocimientos y competencias requeridas por tres empresas de desarrollo de Software. o Proponer las competencias requeridas por las empresas de desarrollo de software de forma que se articulen con la academia y con las necesidades del mercado vigente. - Competencias - Habilidades blandas - Habilidades técnicas - Competencias de ingeniería de software - Competencias de ingeniería de software en Colombia - Ingeniería de sistemas - Ingeniería de software - Desarrollo de Software - Brecha entre la formación académica y la empresa - Brechas de pertinencia - Brechas de calidad. - Brechas de cantidad - Formación Profesional Dual Metodología - Enfoque de la investigación - Diseño de la investigación - Población - Muestra - Consulta de material bibliográfico - Entrevistas - Estudio comparativo de la oferta de cinco programas académicos de ingeniería de sistemas a nivel nacional y cinco programas a nivel internacional - Incorporación de experiencias de aprendizaje en la industria - Entrevistas