Inspiration

Our project is inspired by the need for recruiters to efficiently and accurately search for the right candidates based on contextual information, task-specific achievements, and domain expertise. Traditional Applicant Tracking Systems (ATS) often require manual reviews of resumes, leading to inefficiency and missed opportunities 😪. We wanted to create a platform that leverages Retrieval-Augmented Generation (RAG) to automate and enhance the recruitment process, enabling recruiters to quickly identify candidates based on specific skill sets, experience, and accomplishments, all without manual intervention 🎉

What it does

Our platform allows recruiters to enter natural language queries like:

“Show me candidates with 3+ years of experience in Python automation who reduced development time.” “Find candidates who have worked in the biotech industry for at least 2 years.”

It uses RAG to retrieve and match candidates based on their skills, work experience, project accomplishments, and other contextual data such as the domains they’ve worked in. The system parses and understands resumes to extract relevant information like skills, work history, technologies used, achievements, and domains, allowing for detailed and accurate candidate matching.

How we built it

We built the platform using Retrieval-Augmented Generation (RAG) to efficiently match candidates based on contextual understanding.

Resumes were parsed using LlamaParse to extract essential information such as skills, work experience, and achievements. We generated embeddings using OpenAI's ADA model, which converted the extracted data into vector representations.

These embeddings were then stored in Pinecone, a vector database, for fast and accurate retrieval.

For interaction, we used Chainlit

Challenges we ran into

Data consistency: Ensuring that information was deduplicated (especially skills) across various sections of the resume was crucial to avoid cluttering the search results with redundant data.

Rate-limiting 🫨

Accomplishments that we're proud of

Efficient Parsing and Structuring 📄: We successfully designed a condensed and deduplicated resume format that captures the most critical information, allowing for fast and accurate contextual matching.

Incorporating RAG: We effectively incorporated RAG-based retrieval, making it much more efficient for recruiters to find the right candidates without manual review.

Customizable Search Queries: We implemented a flexible system that allows recruiters to search using natural language queries, focusing on specific skills, technologies, and achievements, which goes beyond traditional ATS systems.

What we learned

Importance of Contextual Data: We learned that simply extracting basic resume details (like skills and education) is not enough. Adding context, such as project achievements, work domains, and specific technologies used, makes the search results much more meaningful.

What's next for Easyday

  1. Company-specific data can be fed for more contextual matching such as cultural fit, internal dev tool contribution prediction of the candidate
  2. checking details like GitHub, Leetcode activity to check the contributions of the candidate 🧑‍💻
  3. A better interface having metadata like number of applicants, dyanamically sending online assessments to shortlisted candidates, suggesting efficient queries to recruiter
  4. A candidate side portal to enable us job seekers to improve our profiles 🙌

Built With

Share this project:

Updates