A platform where users can find the average salary of tech jobs in urban areas across North America, as well as search for job listings and link to their application page. This platform is the backend of a service oriented architecture built using rails api and consumes two microservices built using flask python. The app consumes the microservices on set intervals to build the backend database and send the data as a response to the user's request.
Go to Endpoints and use /jobs and /salaries endpoints to recieve salary information and job listings.
- Fork and clone this repo
- Run
bundle install - Run
rails db:{create,migrate,seed}
bundle exec rspecto run the test suite
Tests to to make sure that given valid parameters, a user is created in the backend and serialized as json to be sent to the frontend.

Tests that if the password and password confirmation do not match, the frontend should be returned a 400 status for bad parameters.

Tests to to make sure that given valid parameters, a saved job is created in the backend and serialized as json to be sent to the frontend.

Tests to to make sure that given valid parameters, a saved job is deleted from the backend and 'saved job destroyed' is serialized as json to be sent to the frontend.

Tests that all of a User's relationships and validations are set up correctly.

Tests that our API call is being made correctly to the MicroService and we are receiving data as we thought we would.

Tests that given valid arguments, the method creates JobListings in the DB along with the correct attributes.

Creates a user in the DB as long as valid parameters are sent as the body of the request.

Updates the user's attributes (other than email and password) in the DB as long as valid parameters are sent as the body of the request.

Authenticates the parameters of email and password match for a user in the DB.

Returns a list of salaries for urban areas, given valid parameter of urban area.

Returns a list of job listings for a given city, given valid parameter of city and/or title.

Creates a saved job in the database, given valid parameters of an exisiting user's ID and the job information.

Destroys a saved job in the database, given valid parameters of an exisiting saved_job ID.

- Rails API
- BCrypt
- FastJsonApi
- RSpec
- Capybara
- VCR
- SimpleCov
This is version 1 of FindJob BackEnd, for any updated versions please check back here. New versions will be linked below:
- Trevor Suter & Joseph Budina for creating the MicroService in Flask
- Aaron Foucheaux & Connor Anderson-Larson for building out the FrontEnd in React
