Giter VIP home page Giter VIP logo

qa-empleo's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

qa-empleo's Issues

Cambios en algunos textos de la documentación

Creo que hay algunos textos que podrían mejorarse en la documentación
por ejemplo

5. Espectativas salariales

Ubicación del cliente respecto a tu casa

En las tablas en la sección de tiempo podría asignarse un nombre con algo mas de contexto a la variable
30 min < x >= 60 min

y en las otras secciones donde se use x igual, esto podría ayudar mas adelante a entender mas fácil el uso del script

y si no hay problema yo podría ayudar en esta parte.

Simplificar la UI/UX

Uno de los principales objetivos de la aplicación es que sea usada también por gente no técnica, es decir, gente a la que le tenga cierta aversión a la línea de comandos se sienta cómoda. Para ello quizá QA-Empleo deba evolucionar a una interfaz web o una app de escritorio.

Para ello se pueden barajar herramientas como blask para web, o tkinter.

Conectar a la api de linkedin

Dado el nombre de una compañía, se le debe preguntar a la api el número de trabajadores actuales y los que han trabajado allí para poder calcular la rotación histórica

Refactorización del código

Actualmente no se valida la entrada más allá de comprobar espacios en blanco, no se comprueban palabras reservadas como None, etc..

Además, tampoco se utilizan métodos o elementos de Python 3 que permitan tener un código legible

Plataforma para extensiones desde distintas fuentes de información

Luego de realizar una refactorización del código, se puede idear una forma de crear archivos dedicados que puedan extraer información de distintas páginas, no solo de linkedin.

Quizás una propuesta pueda ser:

├── addon
│   ├── facebook.py
│   ├── glassdoor.py
│   └── linkedin.py
└── main.py

Así cada archivo puede extraer información de algunos trabajos.

Para parsear sitios web, se pueden utilizar distintos modulos y combinaciones entre ellos, sin ninguna preferencia, acá una lista:

Crear un paquete de Python para distribuir la aplicación (wheel)

Guía oficial para poder hacer packaging - https://packaging.python.org/

El proceso puede parecer bastante complicado, pero existen herramientas que ayudan a hacer más facil como poetry, de todas formas lo más sencillo para realizar un 'wheel' es:

Existen muchas combinaciones para hacer esto, algunas personas usan setup.cfg, otras se mueven a cosas más nuevas como pyproject.toml, pero para una primera versión se podría hacer un setup.py simple.

Una vez con el wheel, el paquete se puede publicar en pypi.org

CI/CD con Github actions y SonarCloud

Me gustaría tener métricas de SonarCloud para saber la calidad del código así como mantener a raya dependencias obsoletas y que se empaquete automáticamente la app.

  • Configuración de Dependabot
  • Configuración de SonarCloud
  • Configuración de GH actions

Elección de versionado

No tengo claro si hay que versionar la app, para dockerizarla se genera el tag lastest, y no hace falta nada más, pero si se quiere meter como paquete de pip, habría que usar SemVer y establecer un proceso de release.

Banner del proyecto

El proyecto quedaría bastante chulo con un banner, no sería el típico proyecto con un readme triste.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.