Job-Applicant matchmaking system using natural language processing - Wooi, Zhuang Ru (2023)
This Job-Applicant Matchmaking System using Natural Language Processing project is for academic purpose. This project aims to provide students with the concept, and implementation process of a matching system catered to both job seekers and employers. Besides just matching job requirements with applicant qualifications, the system also provides personalized job recommendations to job seekers based on their skills, experience, and job preferences, which exposes job seekers to job opportunities that align with their career goals while increasing their overall hire rate. This system uses natural language processing (NLP) techniques to analyse job descriptions and candidate resumes, and machine learning algorithms to recommend the most suitable candidate to a job opening, and vice versa. This process ensures that the employer receives a pool of candidates that meet their job requirements and preferred skills, reducing the need for interviews with unfit candidates. The system is built using Python as the primary language, with the backend consisting of web-scraping, NLP, and data visualization/dashboard libraries such as Selenium, BeautifulSoup, SpaCy, Scikit-Learn, Natural Language Toolkit (NLTK), Gensim, and Streamlit. The system is currently tested with real-world data scraped from well-known job opening hosting sites and shows promising results. The system significantly reduces the time and effort required for recruiters to find the right candidate for a job opening, inversely the job seekers would be able to apply for jobs they are the most well-equipped for.