DEV Community

Shajia Abidi
Shajia Abidi

Posted on • Edited on

Jobamatic - Automate your job search

What I built

I built a web application to help users automate their job search.

Category Submission:

Built for Business

App Link

Jobamatic

Screenshots

landing page which reads Jobamatic
Login page with Auth0
table with a list of job postings

Description

This is a full-stack application, and I used Node (Express) as a backend, MongoDB as my database, Auth0 for authentication, and React as my frontend.

Link to Source Code

Jobamatic

Permissive License

Commons Clause

Background

Two years ago, when I was looking for work, I found more luck on Twitter than LinkedIn. Twitter made it easy for my resume to reach the hiring manager, whereas I was never sure on LinkedIn. On Twitter, I was able to talk to real human beings about the job and forward them my resume. There were no awkward cold emails.

Soon, I was searching for jobs on Twitter daily. I quickly automated the process and wrote a script that will explore the jobs for me.

And yes, it did land me a few interviews.

So for this hackathon, I converted those few lines into a whole application. It has authentication, a database to save jobs, a frontend built with React, which lets the user create, search, delete, update, and store the relevant positions.

How I built it

Building this application was challenging for a lot of reasons; nonetheless, it was enjoyable.

Tools

I had to decide what tools to use. I knew I would be using React to create my frontend (because I have been working with it for a few years).

I wasn't sure what to use as my backend. I had always wanted to try Node(Express) and thought this would be an ideal place to start.

Twitter API

The other issue I faced was the Twitter API. Even though they have documentation, it isn't easy to work with. I had to find another way around, but I will work with their direct API in the future.

Authentication

I never worked with authentication before, so learning authentication was fun. I decided to use Auth0 for authentication, and it was super straightforward.

I would like to give a shoutout to The Collab Lab here and especially to Sam Julien for helping me find my way around the Auth0 authentication.

Deployment

I had never deployed a full-stack application before, and I wasn't sure how to do it. I tried, but Digital Ocean didn't let me. For whatever reasons, my Digital Ocean account wasn't allowing me to deploy my application. I reached out to Chris Sev, and he was able to deploy it on his end with some errors. I then created another Digital Ocean account, and I was able to deploy it (again with some errors). (I still can't deploy the application using my original account).

I followed Traversy Media's video to fix some of the issues. I deployed it again, but this time, I saw a new error.

The Collab Lab came to my rescue again. I posted my problem on their slack channel, and David Lluna hop on a call with me within a couple of hours and helped me figure out what I was doing wrong.

I was adding all of my environmental variables except NODE_ENV === 'production', due to which my client was not building.

Future Features

I would like to add

  • Notifications
  • Categories - I am a developer but I also am a freelance writer. I look for both opportunities and I would benefit from having the jobs listing separately for both of them.
  • Get premium Twitter API to have more reliable results

Additional Resources/Info

I would like to add some resources I used for building this application:

The Collab Lab
Auth0 - React

Top comments (0)