Job Insights 📊
Summary
Description
29th project of the Trybe Web Development course.
Job Insights is an application developed in Python aimed at analyzing real job data. Its implementation was incorporated into a web application developed with Flask, allowing the user to make queries and use different filters for more accurate results.
The data was extracted from the Glassdoor website and obtained through Kaggle.
ℹ️ The entire Flask web application was developed and provided by Trybe. Of all the routes, I implemented only
/job/<index>.
ℹ️ The functions implemented by me are in
src/insights.
ℹ️ I wrote tests for the functions implemented by Trybe. These tests can be found in the
brazilian,counter, andsortingsubdirectories oftests.
Technologies
The project was developed in Python. The implementations were incorporated into a web application developed using the Flask framework and Jinja templates. The tests were written using Pytest, and code quality was ensured using the Flake8 linter.
Features
- Access a set of job-related data.
- Filter the data according to the job type (e.g. temporary, internship...).
- Filter the data according to the industry sector.
- Filter the data according to the annual salary.
- Control the number of rows displayed in each query.
- Access specific pages for each job, which display all the information related to that job.
How to Run
To run the project locally, follow the steps below.
- Clone the repository.
git clone git@github.com:garciaagui/jobs-insights.git
- Navigate to the root of the project.
cd jobs-insights/
- Create the virtual environment.
python3 -m venv .venv
- Activate the virtual environment.
source .venv/bin/activate
- Note that at the beginning of the terminal line there will be
(.venv), as in the example below.
(.venv) gui@gui-desktop:~/Trybe/jobs-insights$
- To deactivate the virtual environment, run the command
deactivate. Remember to activate it again when you return to the project.
- Install dependencies in the virtual environment.
python3 -m pip install -r dev-requirements.txt
- Initialize the Flask application with the command below and access
http://localhost:5000in your browser.
flask run
ℹ️ For additional instructions, click here.
- 🧪 To run all tests, execute the command below.
python3 -m pytest
- 🧪 To run only one test file, follow the example below.
python3 -m pytest tests/sorting/test_sorting.py
- 🧪 To run only one specific test, follow the example below.
python3 -m pytest -k test_sort_by_max_salary_criteria
- If you wish to manually test directly in the modules where the functions were implemented, follow the example below.
python3 -m src.insights.jobs
About Trybe
"Trybe is a future school for anyone who wants to improve their lives and build a successful career in technology, where the person only pays when they get a good job."
"The program features over 1,500 hours of online classes covering introduction to software development, front-end, back-end, computer science, software engineering, agile methodologies, and behavioral skills."
Contact
Project developed by Guilherme Garcia. Below are my social networks and means of contact. 🤘
