WiseJob

Un sistema de priorización del aprendizaje.

Ana Patricia Bautista García
Saturdays.AI
28 min readFeb 11, 2023

--

WiseJob logo

Introducción

Estos últimos años hemos vivido situaciones de locura, que han cambiado nuestra forma de vivir: cambios en la forma de relacionarnos, cambios en la forma de trabajar y cambios en lo que piden y buscan las empresas. La sociedad, la economía y los mercados de trabajo son dinámicos y, especialmente luego de la pandemia por COVID19, el ritmo de los cambios se ha acelerado. Eventos inesperados, avance exponencial de la tecnología y cambios por doquier revolucionan constantemente el mercado de trabajo. Esto nos ha sumido a todos en una enorme incertidumbre en lo que respecta a nuestro futuro: el miedo de volvernos obsoletos ante tantos cambios se hace presente, y es una posibilidad muy real.

Ante esta incertidumbre, quién más, quién menos, todos nos hemos hecho preguntas como:

¿Estoy ganando lo suficiente para la experiencia y las habilidades que tengo?

Y, ¿qué hay de mis condiciones laborales? ¿Podría aspirar a una vida mejor en lo que respecta a mi situación laboral, horarios, presencialidad, conciliación…?

¿Me estoy perdiendo de mejores oportunidades en otra ciudad o país? Pero, ¿a dónde ir exactamente?

¿Debería mejorar mi formación y adquirir nuevas habilidades? O directamente, ¿me vendría bien un cambio radical en mi carrera? Pero, si es así, ¿en qué debo formarme para obtener el trabajo que siempre he soñado?

Lamentablemente, no tenemos forma de responder a estas preguntas. Bueno, siempre podemos entrar en las típicas redes sociales y plataformas de búsqueda de empleo, como LinkedIn, Infojobs o Glassdoor y empezar a buscar ofertas de trabajo y perfiles laborales a mano, uno a uno hasta alcanzar nuestra propia conclusión. O preguntar a amigos, conocidos y contactos y dejarnos guiar por su experiencia y opiniones, que nos serán útiles, pero también serán tan imprecisas y sesgadas como la nuestras. El procedimiento habitual para buscar trabajo o formarnos es la búsqueda a mano y el boca a boca.

Podríamos pensar que es suficiente, pero seamos sinceros: es un proceso manual, desgastante, y frustrante para cualquier persona, especialmente si formas parte de ese enorme grupo de personas que no logra cumplir con todos los requisitos de las ofertas de trabajo. A la hora de la verdad todos nos sentimos igual de perdidos y solos cuando nos planteamos cambiar o mejorar nuestra carrera profesional. Perdidos, porque carecemos de referencias contrastadas, datos objetivos y herramientas fiables que nos guíen en nuestra búsqueda. Solos porque, enfrentados al mercado laboral y la amplia oferta formativa, rara vez alguien nos guía.

Sería deseable contar con herramientas tecnológicas, basadas en datos, que nos guíen en nuestra carrera profesional. Pero, sencillamente, soluciones así no existen o no son conocidas ni populares. Por supuesto, sí que existen servicios de orientación laboral, pero son ineficientes y genéricos y no suelen funcionar, pues adolecen del mismo defecto que nosotros al buscar trabajo o formación: lo hacen todo a mano y utilizan su criterio personal, sin usar la tecnología de forma adecuada. Saben más que tú del mercado laboral y te pueden ayudar, pero eso es todo. No irán más allá de los típicos “en esta profesión se gana bien” o “los que salen con esta carrera tienen paro cero”, etc.

Y cuando entramos en un trabajo nuevo, tampoco sabemos nada sobre el grado de satisfacción de los trabajadores con la empresa, el salario, las condiciones laborales, la flexibilidad, libertad de la que gozaremos y un largo etcétera de cuestiones de las que nos enteramos demasiado tarde: cuando ya hemos aceptado el trabajo y sufrimos las consecuencias de nuestra decisión. Del mismo modo, a la hora de elegir cómo avanzar en nuestra formación, no tenemos ni idea de lo útil y relevante para nuestra carrera que será cursar este título universitario, ese máster o aquel curso online. Y no digamos ya si cambiamos de aires para buscar trabajo en otra parte: la incertidumbre es casi total.

Al final del día, todos nos movemos a ciegas. Literalmente. Porque en esto somos como el ciego que, cuando quiere saber qué hay delante de él, mueve un palo a modo de prueba, pues sólo sabrá qué tiene delante si lo golpea. Y a menudo la diferencia entre expectativa y realidad suele ser enorme. Muchos trabajadores caen rápidamente en el desánimo y cuando comprueban la verdadera situación de su nuevo ambiente laboral y sus condiciones de trabajo, acaban yéndose. Muchos cambian de trabajo cada pocos meses buscando el empleo ideal, sin conseguirlo nunca o hasta pasados muchos años.

De hecho, es habitual que algunos trabajadores “salten” de compañía a compañía, concatenando breves experiencias de meses en muchas empresas, con el fin de aumentar su salario poco a poco con cada nuevo puesto de trabajo y construir una imagen de experto que no se corresponde con la realidad. Estos perfiles se mueven tanto, que rara vez adquieren verdadera experiencia y conocimiento, lo que no es bueno para ellos, ni para las empresas que los contratan.

Especialmente notorio es el fenómeno de “La gran renuncia”, es decir, el abandono masivo de su puesto de trabajo por parte de millones de trabajadores que, descontentos con su salario o con sus condiciones laborales y teniendo una nueva y diferente actitud hacia el trabajo prefieren enfocarse en otros aspectos de su vida y buscar trabajo más adelante, de forma más calmada. Esto supone una caída enorme de la productividad y un desperdicio de talento. Seguramente, muchos de los “renunciantes” no lo serían si fueran capaces de encontrar un trabajo más acorde a sus necesidades del que tenían.

Toda esta situación es igualmente dañina para las empresas. Es habitual ver, especialmente en grandes empresas, una excesiva rotación de trabajadores, principalmente en puestos relacionados con la tecnología y el software. La tónica habitual es una falta total de encaje entre los objetivos de un trabajador y sus deseos y preferencias, con los requisitos de las compañías. En vez de lograr un verdadero “match” entre puesto de trabajo y trabajador, se contrata a ciegas y rápidamente, “al peso”. Los cambios excesivos de personal son letales para la calidad de los proyectos, que acaban siendo auténticos “Frankensteins” tocados por mil manos.

En resumen: pocos planifican bien sus carreras, pocas empresas logran equipos estables y capaces, y el encaje empresa-trabajador es muy pobre. Hacer un buen “match”, exitoso y estable para ambos, es muy difícil. La incertidumbre a la hora de tomar decisiones formativas o al cambiar de trabajo es hasta cierto punto lógica, pues hasta que no experimentamos algo no averiguamos del todo cómo funciona. Sin embargo, si en algo debiéramos contar con apoyo es a la hora de tomar decisiones que afecten a nuestro futuro laboral. Es uno de los aspectos clave de nuestra vida, literalmente lo que nos da de comer, por desgracia, a la hora de la verdad, fiamos nuestro futuro a la suerte, ¡En algo tan importante!

Por ello, cualquier ayuda útil, especialmente si está basada en datos objetivos, puede suponer para nosotros un “game changer” que nos permita alcanzar nuestros más elevados objetivos, sin la necesidad de pasar por mil sitios y hacer mil cursos hasta dar con el puesto de trabajo soñado.

¿Qué podemos hacer para solucionar toda esta situación? ¿Y si hubiera una forma de automatizar y optimizar este proceso de encaje entre la empresa y el trabajador? Una forma de obtener consejo profesional que nos ayude a tomar una decisión informada, basada en datos reales, sobre qué deberíamos hacer a continuación para mejorar en nuestra carrera, en base a nuestras preferencias y situación personal. Un servicio que nos sirva de guía, y, aunque no nos vaya a cambiar la vida en 5 minutos, al menos nos ayude a aumentar significativamente las posibilidades de éxito.

Como seres humanos, nuestro conocimiento y habilidades para decidir sobre cuestiones tan cruciales están limitadas por nuestra reducida experiencia personal. Sin embargo, en los tiempos que corren, en los que salen nuevas y alucinantes IAs casi cada día y los datos son extremadamente abundantes y ampliamente utilizados, no es difícil imaginar que éstos podrían utilizarse de algún modo para ayudarnos a avanzar en nuestra carrera. Y como el mundo y el mercado de trabajo se hacen cada vez más complejos, tenemos que pensar en herramientas más complejas para enfrentarlos. En este contexto, la IA nos ofrece una clara ventaja frente al trabajo manual, pues nos puede ofrecer recomendaciones fiables, actuales y útiles que nos permitan alcanzar nuestros objetivos profesionales. Es con este propósito con el que nace WiseJob.

WiseJob tiene el ambicioso objetivo de servir de fuente de información y consejo sobre el mercado laboral a personas que buscan cambiar de empleo, ascender o mejorar su formación, así como ayudar a empresas y/o a organizaciones públicas o privadas que ofrecen cursos de formación orientados al empleo, conectándolos con los alumnos más adecuados.

Con este objetivo en mente iniciamos nuestro proyecto.

Dicho y hecho: con los datos que disponemos, hemos creado un modelo basado en datos que, utilizando las técnicas adecuadas de inteligencia artificial, permite detectar la correlación existente entre requisitos formativos, localización del puesto de trabajo y otros factores, por un lado, con el salario y la calidad del empleo, por otro.

Usando este modelo, hemos creado una sencilla aplicación que permite a un usuario conocer el salario y la calidad del empleo promedio de los que debería gozar. Para ello, es suficiente con rellenar un breve cuestionario sobre sus preferencias y habilidades.

Pero lo realmente interesante viene ahora: nuestra aplicación te dice, en caso de que estés dispuesto a ello, adónde deberías mudarte para buscar trabajo. Además, de qué habilidades, titulaciones, lenguajes informáticos, etc., deberías adquirir o aprender para impulsar al máximo tu carrera hacia el objetivo que tú mismo te has marcado, con el menor esfuerzo posible. Y no sólo en salario, sino que si así lo deseas, el modelo tendrá más en cuenta aquellos resultados que mejoren tus condiciones laborales en lugar del salario. O una mezcla ponderada de ambos factores, si así lo escoges.

Entras, rellenas un cuestionario y WiseJob te dice qué deberías estudiar o adónde deberías irte. Todo ello, basado en datos REALES de cuánto ganan las personas que tienen tus mismas habilidades, pero que trabajan en otro lugar o tienen las habilidades adicionales que te aconsejamos adquirir, es decir, no te damos una “opinión” sobre qué hacer: ¡Te decimos que hagas lo que a otros ya les ha funcionado!

¡Ojo, cuidado! Nuestra aplicación es sólo una demo y por tanto es preliminar, una simple prueba de concepto. Sus resultados son aproximados, basados en pocos datos de calidad subóptima, hacen referencia sólo a profesiones relacionadas con el análisis de datos y la inteligencia artificial… y sólo en ubicaciones de Estados Unidos. Como ves es una simple prueba de concepto, basada en datos de validez aproximada… y sin embargo es lo suficientemente poderosa como para mostrar algunos resultados sorprendentes acerca de qué se valora exactamente en las empresas, así como en qué lugares se gana más haciendo qué. ¡Pero no te tomes su consejo al pie de la letra! Lo hemos hecho para que veas cómo funcionará cuando esté terminada.

Si quieres conocer más sobre lo que hacemos y trastear con el programa, te invito a que sigas leyendo y después pruebes la aplicación. No creo que en este momento te sirva de gran cosa, pero quién sabe. Sin ir más lejos, a uno de nuestro equipo WiseJob le ha aconsejado que aprenda CI (integración continua), lo cual tiene mucho sentido: es una habilidad muy demandada por empresas que producen software de altísima calidad. También le ha aconsejado que se vaya a Arizona a ganar el triple de lo que gana aquí y… bueno, se lo está pensando, esperemos que no se vaya del proyecto. No hay que precipitarse con estas cosas, todo lo contrario. Nuestro nombre coincide con nuestro propósito: queremos ayudarte a que tomes decisiones sabias sobre tu futuro laboral. ¿No sabes qué hacer? Usa WiseJob y decide sabiamente.

Pero, ¿quiénes sois?

El equipo es el alma de un proyecto. Somos cuatro jóvenes de distintos rincones de la costa norte de España, con distintos perfiles y habilidades. Pero mejor, que cada uno de nosotros se presente a su manera:

Ana Patricia Bautista
  • ¡Hola! Soy Ana Patricia Bautista, Ingeniera Industrial y de Sistemas y máster en Big Data y Business Analytics. Soy investigadora en IoT y Plataformas Digitales en Ikerlan, estoy trabajando en proyectos de IA en el Edge (Intelligent Edge Computing). Este proyecto me motiva porque considero que es muy importante que las personas podamos aprovechar todo nuestro potencial en el trabajo que desempeñemos y el poder hacer un benchmarking personal puede ayudarte a ubicarte mejor en la empresa o incluso a saber qué skills te hacen falta para promocionarte. Por otro lado, si estás buscando trabajo el saber que hay en el mercado te puede ayudar a tomar mejores decisiones acerca de la formación a la que deberías optar y las oportunidades que tienes en el mercado laboral.
María Valentina González
  • ¡Hola! Me llamo María Valentina González, economista de formación y aspirante a máster en instrumentos de análisis económico. He trabajado como analista de mercado laboral, migración y género. Soy Global Shaper y me considero una apasionada de los proyectos sociales y las iniciativas juveniles que buscan aportar a la sociedad. Creo en este proyecto porque como una persona joven, a la que le ha tocado mudarse muchas veces, considero que en momentos en los que nos sabemos, o estamos perdidos o abrumados por desconocer el lugar o el contexto, WiseJob tiene el potencial de orientarnos y ayudarnos a tomar mejores decisiones en términos de formación y búsqueda de empleo.
Samuel Vidal
Samuel Vidal
  • ¡Buenas! Soy Samuel Vidal, y he hecho de todo. Doctor en Física, me dediqué inicialmente a la investigación en el campo de la ciencia de materiales, soy Fullstack Developer con 12 años de experiencia, tengo experiencia en consultoría tecnológica y en su momento me lancé a la aventura de emprender, en la incubadora Demium Startups, con pobre resultado. Tras intentar reorientar mi carrera hacia la Ciencia de Datos, he acabado en el mismo centro de investigación que Ana, Ikerlan, investigando sobre Quantum Machine Learning. También he dado clases particulares de refuerzo a chavales de ESO y bachiller, he trabajado en una tienda de ultramarinos, en una Escape Room y hasta vendí DVDs piratas (ha prescrito). Soy una persona con una insaciable curiosidad por la cultura y el conocimiento: economía, política, historia, ciencia y tecnología, filosofía, y un largo etc. También estoy obsesionado con ayudar a la gente, sea como sea, y si puedo hacerlo ganándome la vida trabajando a mi manera en mi propio proyecto, mejor que mejor. Por ello, WiseJob me apasiona, pues siempre ha rondado por mi cabeza la idea de montar algo relacionado con el aprendizaje y el progreso profesional. Cada vez que deseo iniciarme en un tema o decidir cómo progresar en mi carrera, me topo con una suerte de “niebla de guerra”: ¿Qué debo aprender? ¿Cuáles son los materiales formativos idóneos o las personas que saben del tema? ¿Cuál es el estado del arte del campo que estoy por abordar? ¿Me será útil en el futuro o perderé el tiempo? El conocimiento y la sabiduría son la clave del progreso, tanto personal como social, pero mientras para hacer la colada o ver una serie sólo tenemos que dar a un botón, es prácticamente imposible tomar una decisión informada con respecto a nuestra carrera y formación… y es de las decisiones más importantes de la vida. Yo estoy acostumbrado a apañármelas, y más o menos he decidido sabiamente, pero, ¿Cuánta gente se tira 4 años en la universidad hasta que descubre que su carrera es una pérdida de tiempo? Usar la IA para ayudar a la gente a corregir este grave problema personal y social me parece el camino correcto hacia mis dos objetivos: ayudar a la gente mientras trabajo en mi propio proyecto.
Victor Barahona
  • Hola, me llamo Victor Barahona y soy Ingeniero Técnico Industrial con más de 30 años de experiencia en diferentes sectores, desde operación de redes de telefonía móvil a impresión 3D, automoción, enseñanza, pasando por una etapa como consultor autónomo de unos 8 años. He estado presente en varias olas tecnológicas y por eso me interesé por la inteligencia artificial. WiseJob es una herramienta interesante y me motiva participar en su desarrollo porque puede ser de ayuda para todas aquellas personas que necesiten un sistema de recomendación para mejorar sus habilidades y formación.

Primer paso: en busca del dataset

Antes de seguir, déjanos ponerte en contexto: este proyecto forma parte de la iniciativa AI Saturdays, un movimiento comunitario y global, comprometido a promover la educación en Inteligencia Artificial. Como participantes en la tercera edición de este año en Bilbao, nos pusimos el reto de crear un proyecto que aplicara IA a una problemática social. Y qué mejor manera de demostrar el potencial de la inteligencia artificial que utilizarla para mejorar uno de los mercados que más afecta a nuestras vidas: el mercado de trabajo.

Como hemos mencionado, nuestro objetivo es crear una aplicación que nos ayude a tomar decisiones informadas, basadas en datos, sobre nuestros futuros pasos formativos y laborales. Para ello, necesitamos información real acerca de cuánto ganan los trabajadores, cuál es su grado de satisfacción con su puesto de trabajo, dónde desempeñan su trabajo, qué habilidades y formación poseen, etc. Ello nos permitiría calcular o averiguar cómo mejorarían nuestro salario y/o nuestras condiciones laborales si adquiriésemos nuevas habilidades o buscásemos trabajo en otra parte. También resultaría extremadamente útil toda información relacionada con puestos de trabajo ofertados y sus requisitos y remuneración, para así conocer la oferta y demanda de puestos de trabajo y habilidades concretas, además de lo lucrativo que puede ser centrarse en ellas.

Sin duda, con los datos adecuados, se podría crear nuestra aplicación de asesoramiento laboral y formativo. Esta información es sensible pero extremadamente útil y usada de forma ética y respetando las restricciones legales, podría ayudar a la gente a mejorar enormemente en su carrera laboral. Huelga decir que estos datos son, además, difíciles de obtener.

Por tanto, el primer paso era recabar información real de plataformas de empleo y redes sociales de temática laboral (como LinkedIn), información tanto sobre los puestos de trabajo actualmente existentes y los trabajadores que los ocupan (skills o habilidades asociadas a cada cargo, rango salarial, ubicación geográfica, condiciones laborales, valoración de la empresa, etc.), como sobre las ofertas de trabajo existentes y sus requisitos.

Con tan ambicioso objetivo, es importante recordar que un elefante se come bocado a bocado y por tanto hay que empezar por alguna parte, haciendo algo sencillo. Decidimos por ello orientar nuestro proyecto al sector IT (tecnologías de la información). Elegimos este sector por la gran cantidad y variedad de skills, perfiles (existen cientos de lenguajes, herramientas de gestión, librerías, tecnologías, paradigmas, plataformas y un larguísimo etc.) y por la gran variedad de salarios comparado con otros sectores y su correlación con el nivel de formación y dominio de tales habilidades, con la ubicación física del lugar de trabajo y la calidad del empleo, etc. Pensábamos que podríamos sacar estos datos principalmente de LinkedIn. También, la formación principalmente técnica del equipo y el tiempo limitado de que disponíamos, hacían de ésta la mejor opción. Decidimos también buscar datos restringidos a España, donde la diferencia de salarios y condiciones entre el sector IT y el resto del mercado laboral es aún más marcada.

Para este proyecto en concreto, no encontramos un dataset local ya existente y preparado (con datos de España), por lo que las primeras semanas del proyecto nuestro trabajo consistió en exclusiva en obtener los datos que necesitábamos. Durante nuestra investigación encontramos información muy relevante sobre el mercado laboral IT en España, en informes tanto de HAYS como de Randstad. Contenían datos estadísticos sobre los perfiles más demandados: posición, ubicación geográfica, salario medio y nivel de experiencia. Juzgamos que, partiendo de estos datos estadísticos, era posible estimar el salario asociado a los diferentes tipos de puestos de trabajo del sector IT existentes en el mercado laboral. Pero para cumplir con nuestro objetivo, el siguiente paso era obtener datos que permitieran enlazar cada uno de los puestos de trabajo con las habilidades técnicas requeridas o habituales en aquellos trabajadores que los desempeñaban, para así completar nuestro dataset cruzando datos de dos fuentes. Esto es en general difícil, pero para nuestro propósito era necesario. Pensamos inicialmente en obtener dichos datos de LinkedIn, pero la falta de datasets gratuitos con información sobre LinkedIn, así como la dificultad y gasto de tiempo para obtener dichos datos via web scrapping, nos disuadieron de ello, tras algunos tímidos intentos de obtener información estructurada de LinkedIn de forma manual.

Finalmente, no nos quedó más remedio que tratar de obtener directamente los datos que necesitábamos a través de un cuestionario sobre habilidades técnicas. Diseñamos el siguiente cuestionario sobre formación y empleo y lo movimos todo lo que pudimos:

https://docs.google.com/forms/d/e/1FAIpQLScsGNKvhRg7thXHwIfq1Jv59Qi0LYVhtwkK9Fbqt32GqlmcgQ/viewform

Con él, pretendíamos que los propios profesionales que desempeñan dichos puestos nos dieran información sobre el puesto que están desempeñando, las habilidades técnicas que requieren para hacer su trabajo y el nivel de experiencia con el que cuentan. Difundimos ampliamente la encuesta en redes sociales, entre conocidos, etc., pero no logramos suficiente participación para completar nuestro dataset.

Llegados a este punto, fue necesario hacer un replanteamiento del proyecto. Ante la falta de los datos idóneos que necesitábamos, recurrimos a 3 datasets de Kaggle que tenían una estructura de datos muy similar a la que nos planteamos en un inicio, pero que tenían algunas pegas: los datos, que proceden de la web de búsqueda de empleo Glassdoor, corresponden a ofertas de trabajo en los Estados Unidos de América y están asociados única y exclusivamente a los 3 perfiles más populares relacionados con analítica de datos: Data Analyst, Data Scientist y Data Engineer. Para colmo, no contienen información sobre habilidades reales de trabajadores en sus actuales puestos; sólo información de requisitos para esos puestos, en bruto, en la descripción de la oferta de trabajo. La parte buena, es que contienen una estimación por parte de Glassdoor del salario ofrecido en dichas ofertas de trabajo. Por ello, a efectos prácticos y de desarrollo del proyecto estos datasets nos sirven para una prueba de concepto, ya que contienen correlaciones entre habilidades (que extraeremos de la descripción de la oferta de trabajo), salario (estimado por Glassdoor) y, muy interesante, valoración de la empresa ofertante (procedente de los usuarios de Glassdoor). Gracias a estos datasets pudimos continuar con el proceso de minería de datos y continuar con el proyecto, construyendo nuestro dataset. Estos datasets, lejos de ser idóneos, nos permiten al menos demostrar que lo que proponemos es totalmente factible.

Los datasets utilizados pueden encontrarse aquí:

https://www.kaggle.com/datasets/andrewmvd/data-analyst-jobs

https://www.kaggle.com/datasets/andrewmvd/data-scientist-jobs

https://www.kaggle.com/datasets/andrewmvd/data-engineer-jobs

Los tres datasets originales poseían exactamente la misma estructura y las mismas columnas, por lo que ha sido sencillo unirlos en un único dataset. A fin de utilizar el tipo de puesto de trabajo (Data Analyst, Data Scientist o Data Engineer) como feature categórica para entrenar el modelo si procedía en el futuro, se ha almacenado este dato en una columna extra en el dataset.

Tras analizar el dataset, se tomó la decisión de suponer que la presencia de ciertos términos clave asociados con conocimientos, habilidades, lenguajes de programación, etc., en la descripción de la oferta de trabajo implicaba, aproximadamente, que dicha habilidad era requerida para desarrollar dicho trabajo. Se realizó un proceso de búsqueda de palabras y términos clave escogidos ad hoc entre aquellas habilidades, lenguajes informáticos, herramientas, etc., más habituales en las profesiones que estamos analizando. Además, se analizó manualmente aquellos términos más frecuentemente mencionados en las descripciones de los puestos de trabajo del dataset. Esto permitió añadir 155 features adicionales al dataset, correspondientes a habilidades concretas relacionadas con el análisis y ciencia de datos. De ellas, sólo 80 se han mantenido, ya que muchas de ellas no aparecían en el dataset en cantidades significativas. Estas features son binarias: 1 cuando la habilidad se menciona en la columna “Job Description” y 0 cuando no.

Se realizó posteriormente un proceso de data cleaning sobre el dataset, a fin de eliminar las columnas innecesarias y de transformar adecuadamente los datos de algunas columnas con información numérica expresada textualmente (como el salario o el rating) para convertirlas en features con números reales. El salario se ha deducido obteniendo el promedio de la ventana de posibles salarios estimada por Glassdoor para cada puesto de trabajo.

Analizando los datos: el EDA

Una vez que realizamos la limpieza del dataset el siguiente paso era proceder al EDA o análisis exploratorio de datos. Esto nos permite analizar y visualizar nuestros datos, de cara a prepararlos para implementar nuestro modelo de Machine Learning.

El dataset consta de 7757 filas y 89 columnas (Imagen 1). Las primeras 8 columnas son las columnas originales de los datasets, mientras que las 80 siguientes son las habilidades técnicas que se han obtenido de la columna “Job Description” mediante el proceso descrito arriba. La última columna es el salario promedio (en dólares).

Las variables numéricas contenidas en el dataset son el salario y el rating (una de las 8 columnas preservadas del dataset original. Estas variables son muy importantes para la construcción de modelo. Veamos sus parámetros estadísticos:

Salario medio: 97.18

Rating medio: 3.78

Mediana del salario: 92.0

Mediana del rating: 3.8

Estos valores nos permiten hacernos una idea de la distribución de valores que nos vamos a encontrar en el dataset. Veamos dicha distribución con más detalle.

Imagen 1: Características de las features del dataset

Análisis del salario

En la Imagen 2 se muestra la distribución del salario (en dólares) tomando en cuenta todo el conjunto de datos. Vemos que los salarios se distribuyen, aproximadamente, siguiendo una distribución estadística sesgada a la derecha (Imagen 3), con algunas particularidades. En las distribuciones sesgadas a la derecha, la mayoría de la población se encuentra en el segmento de menor magnitud, mientras que en aquellas sesgadas a la izquierda, sucede al revés.

Por tanto, si interpretamos esta información salarial como correspondiente a la población (aunque corresponda en realidad a ofertas de trabajo, será muy similar) vemos que la mayoría de la población percibe salarios bajos. Sólo una pequeña parte de las ofertas de trabajo sobrepasan los 140K. También se observa, por inspección, que la gran mayoría de la población pertenece principalmente a dos subgrupos:

  • El primer subgrupo aglutina a gran parte de la población, cuyo salario se encuentra en un rango entre 60 mil y 85 mil dólares. Dentro de este subgrupo, el mayor número de trabajadores tiene un salario de unos 60 mil, existiendo también otro grupo grande de trabajadores con un salario de unos 85 mil dólares.
  • En el segundo subgrupo está la población que percibe salarios a partir de 90 mil dólares. La mayor parte de la población de este subgrupo se encuentra al principio, alrededor de los 95 mil dólares, punto desde el que baja paulatinamente hasta valores más altos. El salario más alto que podemos encontrar en el dataset ronda los 225 mil dólares.
Imagen 2: Distribución estadística del salario en el dataset
Imagen 3: Sesgos en la distribución estadística

Análisis del rating

En la Imagen 4 se muestra la distribución del rating de todo el dataset. Este rating es el promedio de valoración que los usuarios de Glassdoor otorgan a las empresas que ofertan el puesto de trabajo. Tiene una sola cifra decimal y puede variar entre 1 y 5.

Imagen 4: Distribución estadística del rating en el dataset

Esta vez, vemos que la distribución estadística está sesgada a la izquierda (Imagen 3). Se puede ver que en centro de la distribución estadística está mucho más cerca de la máxima valoración posible que de la mínima. Vemos por tanto que la gran mayoría de la población ha valorado positivamente a la empresa en la que trabaja o aplica para trabajar. La valoración media es de aproximadamente 3,8. Incluso, vemos que hay un gran pico de empresas cuya valoración es la máxima 5 ó casi 5.

Análisis del salario en las 6 ubicaciones con mayor cantidad de datos

Uno de nuestros propósitos es tener en cuenta la ubicación del puesto de trabajo y su correlación con los salarios. Para ello, necesitábamos comprobar, visualizar y analizar las correlaciones entre ubicación y salario presentes en los datos. Con dicha finalidad, se decidió analizar dicha correlación en las 6 ubicaciones más frecuentes en la columna “Location” del dataset: las ciudades de San Antonio, Houston, San Diego, Austin, Chicago y Nueva York. En la imagen 5 podemos visualizar esta correlación, y hacer una comparación visual rápida entre las mismas.

Imagen 5: Histogramas de las ubicaciones más frecuentes

Las conclusiones más relevantes que podemos obtener de estos gráficos son:

  • Los salarios más altos están en Nueva York y San Diego, con un salario máximo de 205 mil y 204 mil dólares respectivamente.
  • Las cuya distribución estadística es más similar a la distribución normal son las de Houston y San Diego.
  • La distribución más sesgada a la izquierda es la de Austin. Aquí, los salarios máximos no son tan altos como los de Nueva York o San Diego, pero hay más gente con salarios altos que bajos. Si buscas un lugar en el que sea fácil y común tener un salario alto, sin necesidad de destacar, vete a Austin, Texas.
  • La distribución más sesgada a la derecha es la de Chicago. Aquí, la mayoría de la población gana salarios más bien bajos. Esto no sorprenderá a aquellos que conozcan la situación de esta ciudad ubicada en el antiguamente próspero “Rust Belt” o cinturón de óxido.

Desarrollo del modelo

El objetivo que se estableció fue generar un modelo que, utilizando las habilidades y la ubicación del puesto de trabajo como input, fuera capaz de estimar el salario y el rating de la empresa (indicativo aproximado de la calidad del empleo). Como ni rating ni salario forman parte del input y ambos debían inferirse a partir de las habilidades de los trabajadores, se crearon dos modelos de regresión, uno para inferir el salario y otro para inferir el rating.

A continuación, se llevó a cabo el proceso de “model selection”, por medio de la librería lazypredict. Con esta librería, se puede analizar, de entre los algoritmos de regresión más comunes, cuál ofrece mejores métricas para el dataset dado. Con esto, se obtuvo el mejor algoritmo para cada uno de los modelos: HistGradientBoostingRegressor para inferencia de salarios y RandomForestRegressor para inferencia del rating. Usando estos dos algoritmos se entrenaron ambos modelos, haciendo uso de la herramienta scikit-learn. El resultado inicial de dichos modelos fue pobre (R2-score < 0.2).

Para mejorar el resultado, y dado que al menos el salario depende fuertemente de la ubicación del puesto de trabajo, se decidió utilizar la información al respecto contenida en el dataset. La localización del puesto de trabajo presente en el dataset fue modificada para convertirse en un conjunto cerrado de categorías: por un lado, las 20 ciudades más frecuentes (distribuidas en 8 estados) fueron respetadas tal y como están y consideradas categorías; aquellas de esos 8 estados que no corresponden a las ciudades más frecuentes fueron agrupadas como “Resto del estado XX”; y aquellas de otros estados, fueron agrupadas como “estado XX”. A continuación, para poder utilizar estas categorías como features, se utilizó la técnica One Hot Encoding, que asigna una feature binaria a cada categoría de la variable ubicación. Esta técnica mejoró sensiblemente la R2-score de los modelos, especialmente en inferencia de salarios (de 0.2 a 0.4 aproximadamente), lo cual concuerda con lo esperado inicialmente.

Por último, para simplificar el modelo y mejorar los resultados, se decidió explorar técnicas de Feature Selection, para en vez de incluir todas las características, eliminar aquellas que no resultaran relevantes para la inferencia. Las técnicas ensayadas fueron “Correlation Feature Selection” y “Mutual Information Feature Selection”. Tras probar ambas, así como realizar un proceso de refinado de hiperparámetros, se han entrenado los modelos hasta alcanzar su estado final (a fecha 4 de Febrero de 2023, pues seguimos desarrollándolos), en el cual se reducen las features relevantes (asociadas con habilidades del trabajador) a 40 en el caso de la inferencia de salario, y 60 en el caso de la inferencia de rating (ambos subconjuntos de features son diferentes). Los valores finales del R2-score son, respectivamente, 0.44 y 0.25.

Demo de WiseJob: mejora tu carrera

Con el modelo desarrollado, hemos creado una aplicación demo muy sencilla, a modo de prueba de concepto. Puedes encontrarla aquí:

Su funcionamiento es sencillo: tienes que rellenar el cuestionario (Imagen 6), indicando qué habilidades y titulaciones posees y qué lenguajes informáticos y herramientas de software dominas. Asimismo, tienes que indicar dónde se ubica tu puesto de trabajo, a qué categoría o tipo de trabajo pertenece y finalmente usar un slider para otorgar mayor o menor importancia a tu salario con respecto a la calidad de puesto tu trabajo.

Imagen 6: Cuestionario sobre habilidades y preferencias de WiseJob

Usando nuestros modelos, la aplicación de WiseJob te informa, debajo del formulario, cuáles son tus mejores alternativas para mejorar tu carrera. Te indica a qué ubicación alternativa deberías desplazarte, o en su lugar, te indica la habilidad o conocimiento, el lenguaje informático, la titulación académica y la herramienta de software que deberías aprender para mejorar en tu carrera. Es decir, en caso de que te plantees una de estas cinco opciones (mudarte, aprender un lenguaje informático, una habilidad, etc.), cuál es la óptima en función del balance calidad/salario que hayas elegido. Y para cada una de esas alternativas, te indica cuánto crecería tu salario y cómo mejoraría el rating de tu puesto de trabajo si optaras por ella. Puedes ver el resultado en la imagen 7. ¡O probar la demo tú mismo!

Imagen 7: Resultados ofrecidos por WiseJob

En definitiva. WiseJob hace un perfilado rápido de tu currículum y te aconseja exactamente qué hacer. Esperemos que te sirva de ayuda en tu carrera. ¡Pruébalo!

Esta demo ha sido desarrollada con Streamlit, que permite cargar código Python y por tanto modelos de ML, en una interfaz gráfica rápidamente. Las interfaces de Streamlit son ágiles pero muy simples, y es difícil darles un formato adecuado. pero sirve como prueba de concepto, y se puede utilizar. Mejoraremos la interfaz de usuario y la experiencia de usuario en futuras evoluciones del proyecto

Además, hemos incluido una sección de visualización del dataset utilizado que puedes utilizar si quieres trastear.

Análisis de los resultados

Hemos creado dos modelos de regresión que permiten a un usuario inferir, en base a las respuestas a un cuestionario personal sobre habilidades y preferencias laborales, así como la ubicación del puesto de trabajo, qué salario promedio debería percibir y cuál debería ser la calidad de su empleo, medido a través del rating promedio de su empresa. Se ha obtenido un R2-score de 0.44 para el modelo de inferencia de salario y de 0.25 para el modelo de inferencia de rating. Comparando el valor absoluto del error en la inferencia y su desviación típica, con respecto al tamaño total del dominio de cada variable objetivo en el dataset de prueba, el error obtenido es del 10,89% +- 14,14% en la inferencia de salarios y del 10,01% +- 14,33% en la inferencia del rating.

Dada la calidad de los datos y la forma no apta en que las variables relevantes han sido obtenidas de él, la correlación es pobre, aunque sí que resulta significativa (al ser la R2-score mayor que 0), y suficiente para una prueba de concepto. No hay que olvidar que los datos proceden de ofertas de empleo, mientras que lo deseable sería obtener información sobre los puestos de trabajo, salarios y habilidades de trabajadores reales; así como que las supuestas habilidades requeridas para los puestos de trabajo han sido, por simplicidad, obtenidas de la descripción de la oferta de empleo mediante una búsqueda simple, lo que puede dar lugar a que se incluyan habilidades supuestamente requeridas que en realidad no lo son; y por último, que el dato del salario ha sido obtenido de una simple estimación hecha por Glassdoor de un rango de posibles salarios muy amplio, del cual se ha obtenido la media. Es por esto que consideramos que la escasa precisión en la inferencia de ambos modelos viene dada más por la falta de correlación presente en el dataset, dados sus evidentes defectos, que por errores en la construcción del modelo. Concretamente, podemos afirmar que diversos intentos de mejora no han conseguido elevar la métrica R2-score significativamente por encima de sus valores finales, lo que nos permite suponer razonablemente que nos hemos acercado al tope de lo que las correlaciones existentes en el dataset permiten alcanzar.

Debe tenerse en cuenta también que el modelo utilizado es muy simple y no incluye muchas variables que son extremadamente relevantes para asociar salario y calidad del empleo con la formación y las habilidades del empleado: experiencia laboral durante toda la vida laboral, nivel de experiencia asociado a cada habilidad y conocimiento considerado, soft skills, duración de la jornada de trabajo y un largo etcétera de factores cuya inclusión en el modelo sin duda mejorarían la precisión del mismo.

Los modelos construidos permiten además, generando las correspondientes variaciones en las respuestas del usuario, deducir qué nuevas habilidades debería adquirir el usuario y, complementariamente, en qué nueva ubicación el usuario podría buscar trabajo de acuerdo, para optimizar su salario o la calidad de su empleo en función de sus preferencias personales. Esta sencilla herramienta de inferencia permite al usuario explotar la capacidad de simular escenarios alternativos que los modelos entrenados tienen, por lo que en ella radica la verdadera utilidad de dichos modelos.

Conclusiones y pasos futuros

El mundo está cambiando y el futuro es incierto, ¿No sería todo un poco mejor si tomáramos decisiones con más información?

Estos fueron nuestros primeros pasos, y aunque somos conscientes de que aún queda mucho por hacer, creemos que WiseJob tiene el potencial de impactar positivamente la vida de muchas personas que buscan cambiar su trayectoria laboral y profesional, así como de generar mejoras en la eficiencia de instituciones de formación, universidades y centros de empleo. Aumentar la coordinación entre los requisitos laborales del mercado y la formación de los trabajadores es esencial para combatir el desempleo y aumentar la productividad, el salario y las condiciones de los trabajadores, así como combatir el descontento y la frustración de aquellos trabajadores que ven cómo su formación no encaja con lo buscado por las empresas.

Además, aunque esto debe ser considerado detalladamente, a priori este proyecto podría ser rentable. En nuestra opinión, el modelo de negocio que mejor se adapta a un proyecto de estas características es una plataforma orientada a usuarios particulares, para los que es gratuita, pero estando orientado como negocio a empresas (B2B). Es decir, por una parte, los usuarios individuales podrían utilizar la plataforma gratuitamente para su propósito original, y así obtener información sobre su situación laboral, así como recomendaciones personalizadas sobre su futuro laboral y sobre decisiones formativas sobre skills, en función de su situación, preferencias y objetivos profesionales (nótese que, al hacerlo, proveen de datos a WiseJob). Por otra parte, los clientes de pago de WiseJob serían federaciones de empresarios, centros de empleo, academias de idiomas, sitios web de cursos online, portales de oferta de profesores particulares y, en general, aquellos agentes económicos del sector formativo que estén interesados en hacer uso de los datos recabados por WiseJob y de su modelo predictivo de forma rentable.

Por ejemplo, podría hacerse que los usuarios de WiseJob reciban directamente como recomendación realizar aquellos cursos concretos de plataformas de formación online que más se ajusten a su recomendación formativa personalizada, lo cual requeriría una integración básica con dichos sitios web. Por otro lado, se podría usar este modelo y sus datos de formas más tradicionales; por ejemplo, para llevar a cabo campañas de email marketing relacionados con la oferta de cursos y titulaciones, con una segmentación de mercado inmejorable, dado el profundo conocimiento de las preferencias laborales que WiseJob adquiriría de sus usuarios. También podría permitir WiseJob a sus clientes acceder a información estadística relevante sobre el mercado laboral desde el punto de vista del trabajador, considerando sus preferencias y necesidades, para poder adaptar su oferta formativa a dichas necesidades y volverla más eficiente y pertinente, aunando este factor con las necesidades del mercado. En definitiva, WiseJob automatizaría en gran medida la búsqueda de alternativas formativas y laborales, sirviendo de gran ayuda a trabajadores, empresas y centros formativos de toda índole.

Para continuar avanzando, y alcanzar el objetivo que nos proponemos, algunos de los pasos futuros son:

  1. Creación de un MVP: como mencionamos anteriormente, el hecho de no tener un dataset local no nos ha permitido construir ni un dataset ni una herramienta predictiva para España. Seguiremos con nuestro plan de obtener datos relativos a toda España y a todo el sector IT. Los desarrollos realizados sirven como prueba de concepto, y son extrapolables y parcialmente válidos para continuar el desarrollo en un futuro, aplicándolos a los nuevos datos con cambios menores. Será necesario redefinir las variables que intervienen en nuestro modelo, y reentrenar éste de forma que dispongamos de una herramienta más precisa e idónea que la actual prueba de concepto, y cuyos resultados resulten más prácticos a un usuario aleatorio. Asimismo, será necesario crear una página web sencilla o una app que permitan utilizar WiseJob de forma simple, cómoda y visualmente agradable.
  2. Validación del proyecto: estudios de mercado, análisis de la competencia, conversaciones con los stakeholders relevantes y potenciales clientes, eventos sociales de validación y uso de la plataforma en directo, diseño del modelo de negocio, establecimiento de un roadmap, campañas de marketing digital, análisis y optimización del funnel de conversión, mejora de la plataforma web/aplicación, etc. Se trata de comprobar la viabilidad del proyecto, como negocio si es posible, y analizar la invertibildad del mismo.
  3. Expansión a otras ubicaciones geográficas y/o todo el mercado laboral: si la idea se consolida y el proyecto es aparentemente viable, será necesario escalarlo para aumentar la base de usuarios y llevarla al punto crítico necesario para resultar atractivo a potenciales clientes.

Finalmente te dejamos los siguientes anexos por si quieres saber más:

Nuestra presentación

Nuestro proyecto en GitHub

Nuestra demo

Agradecimientos

Nos gustaría agradecer a los mentores, ponentes y organizadores de Saturdays.AI Bilbao tercera edición, por su dedicación y apoyo en el desarrollo de este proyecto.

--

--

Saturdays.AI
Saturdays.AI

Published in Saturdays.AI

Saturdays.AI is an impact-focused organization on a mission to empower diverse individuals to learn Artificial Intelligence in a collaborative and project-based way, beyond the conventional path of traditional education.