Inspiration

We were inspired to create deadline.io when we noticed how difficult it can be for job seekers to keep track of application deadlines, as well as keeping up with new job openings, especially when applying to multiple jobs at once. We wanted to create a solution that would simplify this process and make it easier for people to stay organized and on top of their applications.

What it does

deadline.io uses web scraping to retrieve the job titles and application deadlines from career websites such as https://www.bcit.ca/about/careers/. It then automatically lists out the available job openings and displays it on the calendar based on when the application deadline is. This solves two problems: having to manually refresh and check job websites everyday for new openings, as well as keeping track of when the deadline is, so we can get our resume ready for the application in time.

How we built it

Our node.js backend has a scheduled cron job that runs every hour to get up-to-date information from career websites. The job postings and application deadlines are then displayed by our React frontend, using the react-calendar library, to display the calendar in an intuitive way. Our backend is connected to a MongoDB database, in which we setup to be able to support user accounts and payments in the future.

Challenges we ran into

We hoped that there would be public APIs available so we could gather job data without web scraping. Most career websites do not have such APIs, so we had to resort to web scraping. However, this is where the value of deadline.io becomes important, our backend logic handles all the hard work needed so the user does not need to manually check job websites everyday.

Since web scraping can cause our IP to be blacklisted by the job websites' firewall, we implemented a scheduled cron job that only retrieves from the website every hour.

Accomplishments that we're proud of

  • Our idea - this is something we will continue to develop as well as use for our own job hunting purposes.
  • Finding and using available resources such as the react-calendar and other React/Node packages so we don't need to reinvent the wheel when possible and instead focus on aspects that make our app and idea unique.

What we learned

In addition to the technological skills we gained, we have also learned more about the business aspects of software. Through the help and guidance of our mentors, we learned how to pitch our ideas, designing a user-friendly UI/UX workflow, as well as ways to make our app profitable (deadline.io PRO)

What's next for deadline.io

  • Support user payments to unlock deadline.io PRO
  • Support for more company websites
  • User login/registration
  • Improving UI/UX
  • Deploying to cloud

Built With

Share this project:

Updates