Inspiration

After going reading through the theme for this year's hackathon, my first thought was about the mass layoffs that have been taking place recently. Seeing as finding a job to apply to is the first step of the job application process, even before submitting your resume or preparing for interviews, I decided to target job listings instead of a resume builder or a interview preparation tool.

What it does

As far as the user is concerned, Job Explorer is extremely simple. You just enter a job title and a location, and the app displayed dozens of listings. The table that is displays has 6 columns: Position, Company, Location, Date Posted, Salary and Link. These are the key pieces of information that people need while searching for jobs, and the links allow them to view the actual listings. The purpose of Job Explorer is to compile listings from multiple websites and display them together for convenience.

How I built it

I used Python and Flask for the backend and HTML and Bootstrap for the frontend. I wanted a clean, simple design so I opted for Bootstrap. I also did this because it saved me time, since I only had ~24 hours and the backend needed most of it. I used Flask to extract the inputs from the frontend and used web-scraping to compile job listings into a single .csv file.

Challenges I ran into

This was my first time dealing with web-scraping, so a significant amount of time went into watching tutorials on YouTube or reading StackOverflow answers. I also kept running into websites that had Cloudflare protection against web-scraping, making it extremely difficult to find data. I tried using various headers in order to bypass the security, but it didn't work on most websites.

Accomplishments that I'm proud of

I usually struggle with reading and writing files, so I'm proud of the fact that I was able to work with a .csv file and incorporate it into HTML. I'm even more proud of the fact that I managed to perform the required web-scraping after one night of learning.

What I learned

I learned that programming might seem extremely difficult (sometimes impossible), but most things can be learnt by taking it slowly and doing it instead of just watching/reading.

What's next for Job Explorer

Next, I want to scrape data from several more websites so that I can make Job Explorer a huge compilation of data.

Share this project:

Updates