Cupid is a platform that simplifies the referral process for job seekers by connecting them directly with employees willing to give referrals at their companies. By matching job seekers with the right referral givers, Cupid makes getting a referral more accessible and efficient, increasing the chances of landing the desired job.
We recognize the significant challenges job seekers face when trying to secure referrals, and our mission is to create a platform that serves as a "bridge," making the referral process smoother and accessible to all job hunters, entirely non-profit.
Cupid is an application that collects both referral requests from candidates and available referral opportunities from employees (referrers). A user can be both referrer and candidate where they can request or open referrals. Each week, the app automatically processes and matches all open requests with available opportunities.
Cupid's algorithm prioritizes fairness and efficiency by considering factors like request time, priority level, and compatibility between the candidate's resume and the job posting. This scoring system ensures that referrals are distributed equitably, especially to those who need them the most. Additionally, Cupid uses a two-phase matching algorithm to maximize the number of successful referrals, helping as many job seekers as possible connect with opportunities.
[Incoming feature] To encourage more participation from referrers, we’ve introduced a credits system. Users can take on both roles—as a referrer and as a candidate. When a user successfully provides a referral, they earn credits, which can then be used to gain higher priority for their future referral requests. This creates a cycle of giving and receiving, ensuring that all users—whether referrers or candidates—remain motivated and engaged with the platform.
- LinkedIn API: Used for user authentication and authorization.
- SendGrid API: Sends verification passcodes via email to ensure secure user registration.
- AWS API Gateway: Manages API calls to the backend services.
- AWS Lambda: Handles API calls, runs notification workers, and executes matching algorithms.
- AWS S3: Stores files such as resumes and profile pictures.
- AWS EventBridge: Schedules Lambda functions for periodic algorithm execution.
- AWS SQS: Manages and processes notification messages at a controlled rate.
- AWS SES: Sends email notifications to users.
- Firebase: Manages real-time database operations to ensure instant notification updates on the frontend.
- Vercel: Deploys the frontend for seamless user experience.
- Create referral requests.
- Track the status of requests.
- Respond to additional information requests from referrers.
- Create referral openings.
- Verify company affiliation through company email to create referrals.
- Track the status of referral openings.
- Request further information from candidates.
- Matches based on three main criteria: request time, priority level, and compatibility between the candidate's resume and the job posting.
- Automatically executes weekly.
- Real-time notifications in the user interface with almost immediate email updates.
Automatically fills out user profiles based on their resume, streamlining the onboarding process.
Evaluates compatibility between a candidate’s resume and a job posting to calculate the likelihood of a successful referral. Referrers can also use this to decide whether to proceed with a referral.
The Cupid architecture adopts a serverless approach using AWS Lambda, SQS, EventBridge, and other managed services to achieve scalability and cost efficiency. By leveraging serverless technologies, Cupid scales automatically with user demand, reducing the need for manual management and allowing significant cost savings by charging only for the resources utilized.
Handles user interactions like creating referral requests, updating profiles, and submitting referral openings. This layer manages the communication between the frontend and backend services.
- Frontend (Vercel): User interface deployed for optimized delivery.
- AWS API Gateway: Receives and forwards API requests securely to backend services.
- AWS Lambda (Server Lambda): Processes requests, interacts with MongoDB for CRUD operations, and stores files in AWS S3.
API Gateway and Lambda provide a cost-effective, serverless way to manage requests, while S3 ensures secure file storage.
Executes the matching algorithm that pairs candidates with referral opportunities, scheduled weekly for consistent matches.
- AWS Lambda (Algorithm Lambda): Implements the core matching logic based on criteria like request time, priority level, and resume compatibility.
- AWS EventBridge: Schedules weekly execution of the matching algorithm.
Using Lambda allows cost-efficient execution, while EventBridge automates scheduling, ensuring consistent and up-to-date matching without manual intervention.
Keeps users informed in real-time about activities like updates, matches, and requests for more information.
- AWS Lambda (Notification Service & Worker): Handles notification processing, including sending emails.
- AWS SQS: Queues notification messages, decoupling message generation from processing.
- AWS SES: Sends email notifications.
- Firebase Realtime Database: Updates notifications instantly on the frontend for a seamless user experience.
SQS ensures efficient and stable processing of notifications that avoid overloading for workers, SES handles cost-effective email delivery, and Firebase provides real-time updates, enhancing user engagement.
- Amazing UI/UX Designer: Ngoc Anh