JustJob Logo.png


CS302_G1T4_Presentation_Slides.pdf


Project Overview

The general idea was to effectively connect employers and freelancers with five key scenarios:

  1. Create a Job

    Untitled

    When an employer posts a new job, freelancers that are subscribed to the employer will receive a notification (email).

  2. Apply Job

    Untitled

    When freelancers apply for a job, the employer will receive an email for the job applications that he receive.

  3. Accept Job Application

    Untitled

    The employer accepts a single job application, and the applicants are informed of the result via email (successful applicant will receiver successful application email, and failed applicant(s) will receive an application failed email).

  4. Complete Job

    Untitled

    A freelancer can submit his completed work and the employer will be notified via email to approve/disapprove the work.

  5. Approve Completion

    Untitled

    The employer accepts the completed work submitted by the freelancer, and payment will be made to the freelancer using Stripe. The freelancer will be notified via email. The Saga pattern is also implemented here such that if the payment fails, the status will be rolled back.


Languages

  1. JavaScript

  2. Python

  3. TypeScript


Services

  1. Payment (with Stripe) (Python)
  2. Job (ExpressJS)
  3. User (TypeScript, AWS Cognito)