Inspiration

As students looking for co-ops looking for a job is hard. It takes a lot of time and effort and it some days it feels like you're making no progress at all. There is only so much time in a day it's hard to know which companies are good and worth taking the time to apply to and which are not. So we collectively came up with an idea, what if there was a way to ask past employees of a company what it was like working for a company. That is how we came up with Career Rater.

What it does

Career Rater is a website in which employees of a company can anonymously post their ratings of a company based on five categories, confidence in their job, transparency from the company, moral, compensation and overall satisfaction. After they post their rating an average score is made and posted for the whole world to see. Potential employees are then able to look up the scores for a company that they are interested in working with.

How we built it

Once we switched to Node.js, the app was initially run with the http-server module, but then switched over to using express.js so we could deploy the application faster. After getting the back-end to render pages properly, our primary focus became connecting the application to an SQL database; Heroku was paywalled and services like AWS needed a credit card, so we opted to use a PostgreSQL database setup through Render. With Render giving us the database credentials, we managed to connect the database to the application, and after a lengthy amount of time, manipulate and display table information through a webpage.

Challenges we ran into

Our biggest challenge was figuring out which language to use for the database. We knew that SQL was our best option however we did not know which language to use in addition to it. At first we tried Python and tried to implement it using flask. However, we could not get it to connect to the website that we had made using HTML. After hours of working at it and bugging some mentors we tried Node.JS instead. Most of our team was not that familiar with Node.JS so it took us a further few hours and bugging more mentors before we were able to get it to work with our website.

Accomplishments that we're proud of

Our biggest accomplishment was when we finally had a working database on our website. It had been hours of us trying everything we could to get it to work with zero progress being made. So the first time we were able to get anything to run on our website we were all overcome with joy and could not help but cheer.

What we learned

We learnt a lot about using SQL with both Python and Node.JS allowing us to more easily create databases in those languages. We all had some experience with either python or javascript but implementing a second language through them was a completely new experience for all of us. Additionally, we learnt how to set up a SQL database on a website. None of us had any experience doing this and it took a lot of time and patience to accomplish.

What's next for Career Rater

A few features are still missing due to time constraints. Namely the search bar is unfortunately just there for window dressing for now. In the future it would allow people to look up companies based on every column from within the database, i.e. the five questions, overall satisfaction, company and a specific branch of the company.

After that we would implement a comment system in which employees can leave more personal comments about their experiences.

The biggest thing that would be implemented is a way to prevent spam. Our biggest concern was keeping the identity of employees who rate a company secret. However, this does open the door to people brigading a company with poor reviews that they may not deserve or for a company to try and artificially inflate their own score. We would create a system in which people would have to prove that they work for a company while staying anonymous, such as showing a work ID with all relevant info censored.

Built With

Share this project:

Updates