Skip to content

A Django app that uses the Reed API to find and manage job searches

Notifications You must be signed in to change notification settings

digitalhop/Jobfinder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Django Job Finding APP

A web styled app built with Django that allows you to link to the Indeed API and download the latest jobs based on the search requirements you have.

Why did I Build this?

  1. I got tired of browsing through thousands of job descriptions from pages and pages of lists just to come across the one job that was relevant to me. There are numerous reasons so I’ll try to list them all below:
    • Be able to mark a company as not interested so I don’t have to see it ever again
    • Be able to mark a company as good, so that I can see its jobs highlighted
    • Be able to quickly see all the new jobs that I haven’t seen before without having to troll through thousands of other listings
    • Be able to search all my different types of filters with one click of a button such as location, keyword, etc
    • Be able to identify jobs I am interested in and also able to remove jobs I am not interested in
    • Be able to mark a job as applied for, got a response or even rejected for
    • Be able to keep a record of the actual job description on a database for referring to later
    • Be able to remove duplicate jobs that crept into the database from the same company
    • Be able to search jobs that are not through staffing agencies
Getting Started

There are 2 components that will be required to get your own copy of this project up and running.

A SQL database

The Django installation

Notes on setting up the SQL database:

I opted to use the PYODBC python module for communicating with a Microsoft sql database. I realise Django has a built in sql component, but I wanted to practice my skills with SQL and the actual SQL queries were getting a little complex.

There are a few resources online for helping you get set up with a local SQL database and this readme will not go into the specifics for how to do that. To get you started here is a good YouTube video that I found rather helpful

https://www.youtube.com/watch?v=yasfZuou3zI

Once you have setup your SQL server you will need to create the tables as follows:

--reed jobs, each job board has its own table

CREATE TABLE Reed_jobs (

job_id VARCHAR(100),

employer_name VARCHAR(100),

employer_profile_id INT,

employer_profile_name VARCHAR(100),

employer_id INT,

job_title VARCHAR(200),

actual_location VARCHAR(100),

salary VARCHAR(50),

min_salary INT,

max_salary INT,

currency VARCHAR(10),

expires DATE,

creation_date DATE,

short_description VARCHAR(1000),

long_description VARCHAR(8000),

applications INT,

internal_url VARCHAR(200),

external_url VARCHAR(2000),

removed VARCHAR(10),

PrIMARY KEY (job_id)

);

 

--user searches, the parameters used in a particular type of search

CREATE TABLE User_searches (

search_query_num int NOT NULL IDENTITY(1,1),

user_id VARCHAR(100) NOT NULL,

search_keywords VARCHAR(100),

search_location VARCHAR(100),

search_distance INT,

search_permanent VARCHAR(10),

search_employers_only VARCHAR(100),

search_reed VARCHAR(10),

search_indeed VARCHAR(10),

lastIndeedFetchDate DATE,

PRIMARY KEY (search_query_num),

CONSTRAINT FK_user_id FOREIGN KEY (user_id) REFERENCES Users(user_id)

);

 

--the users details

CREATE TABLE Users (

user_id VARCHAR(100),

first_name VARCHAR(100),

last_name VARCHAR(100),

PRIMARY KEY (user_id)

);

 

--links the users searches, jobs, and if they like the job and have applied for it

--used to show all the users jobs on one screen from different boards

--later i need to include indeed and linkedin job ids as FK's

CREATE TABLE User_jobs (

job_number int NOT NULL IDENTITY(1,1),

user_id VARCHAR(100) NOT NULL,

search_query_num INT NOT NULL,

like_the_job VARCHAR(10),

applied VARCHAR(10),

the_status VARCHAR(10),

user_job_id VARCHAR(100),

editedTime TIMESTAMP,

PRIMARY KEY (job_number),

CONSTRAINT FK_user_id_user_jobs FOREIGN KEY (user_id) REFERENCES Users(user_id),

CONSTRAINT FK_search_query_num FOREIGN KEY (search_query_num) REFERENCES User_searches(search_query_num),

);

 

--Table used for saying if user likes a specific company or not

CREATE TABLE User_companies (

unique_entry INT NOT NULL IDENTITY (1,1),

user_id VARCHAR(100) NOT NULL,

company_name VARCHAR(100) NOT NULL,

like_or_not VARCHAR(10),

PRIMARY KEY (unique_entry),

CONSTRAINT FK_comp_user_id_users_user_id FOREIGN KEY (user_id) REFERENCES Users(user_id),

);

About

A Django app that uses the Reed API to find and manage job searches

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages