GPT Recruiter Project
Languages Used: Python
During my time at PeerSource, I was asked by my manager if I could create an AI system to help recruiters look through hundreds of resumes. Working with my boss to gather requirements, I created a system that rates candidates on a scale from 1 to 10 on how good of a fit their resume is for a job posting. All resumes are still viewed by a real person, but this score helps recruiters save time during the prescreening process and focus their efforts on the potentially better candidates.
How it Works
The script iterates through an Outlook inbox which all of our incoming LinkedIn applicants go into. All of our LinkedIn jobs have a name which corresponds with a name in a dictionary file that contains all of our job descriptions. The candidate's resume is downloaded, and its text is read into the system. For each email, ChatGPT is given the candidate's resume and the job description for the job they applied to and asked to act as a recruiter and score the person on their fit (the actual prompt is much more complicated). The email heading is then updated to show this score to recruiters. Optionally, the person can be sent automatically to a rejection inbox if they fall below a certain score. I also created a simple GUI using Tkinter (shown above) so our recruiters and my manager could easily run my script and add new jobs to the dictionary without having to go into a terminal in VSCode. The reasoning for the score is also attached to the email body to help recruiters understand why a person received a certain score.
Skills Learned
Throughout this project, I learned how to gather project requirements, work cross-functionally with recruiters, and translate requirements into actionable code. I learned how to use a lot of new Python tools such as `win32com` to connect to Outlook and how to send queries to ChatGPT's API.