En las comunidades online del área informática constantemente hemos observado muchas consultas de personas que no saben cuáles son las habilidades requeridas para conseguir un trabajo en el área, o que no saben por dónde comenzar. En el presente proyecto buscamos entregar una solución que oriente a los usuarios respecto a las habilidades y conocimientos que requieren las empresas, en base a las ofertas de empleo publicadas en Get On Board.
Dentro de este contexto, identificamos 4 tipos de usuario que serán el centro de la solución a desarrollar:
- Estudiantes recién egresados
- Profesionales de otras áreas que deseen cambiar de carrera
- Profesionales del área IT que deseen cambiar de especialización
- Profesionales del área IT que deseen avanzar en seniority dentro del cargo
JobAdvisor es una aplicación web que busca entregar recomendaciones sobre el punto de partida para quienes desean buscar un nuevo trabajo. Analizando las ofertas de trabajo publicadas en Get On Board, te indica cuáles son las habilidades que deberías adquirir/reforzar para encontrar ese puesto que tanto buscas.
Dentro de sus funcionalidades incluye:
- Búsqueda por cargo: Te permite indicar un cargo o término relacionado al cargo (ej. "Backend") y te indica cuáles son las habilidades más solicitadas por las empresas que han publicado ofertas asociadas a la búsqueda.
demo_jobadvisor.mov
El repositorio en Github utiliza una estructura monorepo, la cual contiene los siguientes directorios:
- web: Contiene el proyecto de la aplicación web que sirve el front end.
- api: Contiene el proyecto de la API REST que sirve como back end para la aplicación web.
- scrappers: Contiene los scripts de scrapping que buscan recomendaciones de cursos para las habilidades requeridas en las ofertas de trabajo.
- data: Contiene información sobre el schema de base de datos y los scripts SQL para desplegar la db del proyecto.
Aplicación de página única (SPA) desarrollada con React, la cual muestra la UI para el usuario final. Se conecta con el backend a través de una API REST, desde la cual obtiene los resultados de búsqueda.
Para la ejecución del proyecto, se requerirá que el ambiente de ejecución cuente con el siguiente software:
- NodeJS >= v14.16
- NPM >= v6.14
- Clonar el repositorio.
- Moverse a la raíz de la carpeta
web/
. - Instalar las dependencias del proyecto con el comando
npm install
. - Ejecutar la aplicación en modo de desarrollo con el comando
npm start
.
API desarrollada sobre NestJS que alimenta a la aplicación web de JobAdvisor y consume
Para la ejecución del proyecto, se requerirá que el ambiente de ejecución cuente con el siguiente software:
- NodeJS >= v14.16
- NPM >= v6.14
- Clonar el repositorio.
- Moverse a la raíz de la carpeta
api/
. - Instalar las dependencias del proyecto con el comando
npm install
. - Ejecutar la aplicación en modo de desarrollo con el comando
npm start:dev
.
Scrapper que lee los cursos recomendados para un tema en particular y los almacena en la tabla tag_courses
de la base de datos.
- Instalar las dependencias especificadas en el archivo
requirements.txt
, con el comandopip install -r requirements.txt
. Se recomienda usar un ambiente virtual, por ejemplo, usandovenv
. - Configurar la conexión a la base de datos en el archivo
.env
. - Invocar el script desde la línea de comandos:
python udemy_scrapper.py "Python"