The AI Resume Screening & Job Matching Dashboard is an intelligent recruitment analytics system designed to automate and enhance the resume screening process using Natural Language Processing (NLP) and Machine Learning techniques.
In modern recruitment workflows, organizations often receive hundreds or even thousands of resumes for a single job position. Manually reviewing these resumes is time-consuming, inefficient, and prone to human bias. Recruiters must evaluate candidate skills, compare qualifications, and match them with job requirements.
This project addresses that challenge by developing an AI-powered Resume Screening and Candidate Ranking System capable of automatically analyzing resume content and matching candidates with relevant job descriptions.
The system uses:
- TF-IDF (Term Frequency – Inverse Document Frequency) for text feature extraction
- Cosine Similarity to measure similarity between resumes and job descriptions
An interactive Streamlit dashboard visualizes the analysis results with graphs, insights, and recruiter-friendly analytics.
Reduce manual effort by automatically analyzing resumes using machine learning techniques.
Use NLP techniques to match resumes with job descriptions accurately.
Visualize recruitment data through interactive dashboards.
Allow recruiters to quickly shortlist relevant candidates.
Show how machine learning and NLP can be applied in HR Technology (HRTech).
- 🔍 Automated resume analysis using NLP techniques
- 🤖 AI-based candidate matching system
- 📊 Interactive Streamlit dashboard with analytics graphs
- 📈 Resume and job dataset exploration
- 🏆 Candidate ranking based on similarity scores
- 📑 Executive insights for recruitment analysis
- Python 3.8 or higher
- pip (Python package manager)
- Git
- Web browser
- VS Code / PyCharm
- Virtual environment (
venvorconda)
| Technology | Purpose |
|---|---|
| Python | Core programming language |
| Streamlit | Interactive dashboard development |
| Pandas | Data manipulation and analysis |
| Scikit-learn | Machine learning algorithms |
| TF-IDF Vectorization | Text feature extraction |
| Cosine Similarity | Resume-job similarity scoring |
| Plotly | Interactive visualizations |
| Matplotlib / Seaborn | Statistical plotting |
| WordCloud | Text visualization |
| Natural Language Processing | Resume text analysis |
This project uses two datasets for resume analysis and job matching.
File: Resume.csv
| Column | Description |
|---|---|
| ID | Unique identifier for each resume |
| Resume_str | Complete resume text |
| Resume_html | HTML version of the resume |
| Category | Job category |
- ~2500 resumes
- Multiple job categories
- Rich textual data
- Suitable for NLP analysis
- Resume classification
- Skill extraction
- Resume screening
- Candidate ranking
- Job matching systems
File: training_data.csv
| Column | Description |
|---|---|
| company_name | Hiring company |
| position_title | Job title |
| job_description | Detailed job description |
| description_length | Length of job description |
| model_response | Structured AI response |
- Multiple job postings
- Different industries
- Text-based job requirements
- Useful for resume-job matching analysis
The original dataset Resume.csv** is approximately 56.3 MB**, which exceeds GitHub's recommended upload limits.
GitHub generally recommends keeping files below 25 MB for better repository performance.
To solve this issue:
- The original dataset
Resume.csv** was compressed into **Resume.csv.zip - The compressed dataset is included in the repository
- Users must extract the dataset before running the application
- Download or clone the repository
git clone https://github.com/HarshaVardhanM08/FUTURE_ML_03.git
- Locate the dataset file
Resume.csv.zip
-
Extract the ZIP file
-
After extraction you will obtain
Resume.csv
- Place it in the project directory.
AI Resume Screening Dashboard
│
├── Dataset Overview
├── Resume Analysis
├── Job Analysis
├── Resume-Job Matching
└── Executive Report
Provides high-level insights about both datasets.
Features:
- Total resumes
- Total job postings
- Unique job categories
- Dataset preview
- Resume category distribution graph
Performs exploratory analysis on resume content.
Visualizations:
- Resume category distribution
- Resume length distribution
- Resume word cloud
Insights:
- Resume category frequency
- Text complexity
- Most common keywords
Analyzes job descriptions.
Visualizations:
- Job description length distribution
- Top hiring companies
- Most common job roles
The core AI component of the system.
Converts text into numerical vectors.
Term Frequency – Inverse Document Frequency
Measures similarity between vectors.
Score Range
0 → No similarity
1 → Perfect match
Resume Text / Job Description
↓
Text Preprocessing
↓
TF-IDF Vectorization
↓
Cosine Similarity
↓
Candidate Ranking
Candidates are ranked based on similarity scores.
- Convert resumes and job descriptions into TF-IDF vectors
- Compute cosine similarity scores
- Rank candidates by highest similarity score
| Rank | Resume Category | Match Score |
|---|---|---|
| 1 | Data Science | 0.89 |
| 2 | Python Developer | 0.85 |
| 3 | AI Engineer | 0.82 |
git clone https://github.com/HarshaVardhanM08/FUTURE_ML_03.git
pip install streamlit pandas scikit-learn plotly seaborn matplotlib wordcloud
Resume.csv.zip → Resume.csv
streamlit run resume.py
The Streamlit dashboard will automatically open in your browser.
FUTURE_ML_03
│
├── resume.py
├── Resume.ipynb
├── Resume.csv.zip
├── training_data.csv
├── README.md
└── LICENSE
This system demonstrates how AI can improve recruitment systems.
Applications include:
- Applicant Tracking Systems (ATS)
- Resume screening automation
- Skill matching systems
- Recruitment analytics platforms
- Talent intelligence platforms
Organizations can use such systems to reduce hiring time and recruitment costs significantly.
Possible improvements include:
- Resume PDF parsing
- Advanced skill extraction using NLP
- AI-based resume summaries
- Advanced recruiter analytics
- Authentication system
- Cloud deployment
- Deep learning-based semantic matching
This project demonstrates practical knowledge in:
- Natural Language Processing
- Machine Learning pipelines
- Data visualization
- Interactive dashboards
- AI system development
Harsha Vardhan Maradana
Python Full Stack Developer (In Progress) | Game Development Enthusiast | Focused on Creating Immersive & Innovative Digital Experiences
GitHub: https://github.com/HarshaVardhanM08
If you found this project useful:
⭐ Star the repository 🍴 Fork the project 📢 Share with others
This project is open source and available under the MIT License.
The AI Resume Screening & Job Matching Dashboard demonstrates how machine learning and natural language processing can modernize recruitment workflows.
By combining data science, NLP techniques, and interactive visualization, this system provides a scalable solution for building intelligent recruitment platforms.