Skip to content

Repository files navigation

SkillMatch ATS

A console-based Applicant Tracking System (ATS) built in Java as a mini project. It allows recruiters to post jobs and candidates to apply, with automatic skill-based match scoring.


Features

Recruiter portal

  • Add, edit, and delete jobs
  • View all job listings
  • View applications for a job ranked by match score

Candidate portal

  • Register with name and skills
  • View and edit your profile
  • Browse available jobs
  • Apply for jobs and see your match score instantly
  • View all your past applications

Core logic

  • Skill-based match score calculated as a percentage
  • Missing skills shown for each application
  • Duplicate application prevention
  • Data persisted to text files across sessions

OOP concepts used

Concept Where
Abstract class User — base class for Candidate
Inheritance Candidate extends User
Interface Matchable implemented by MatchingService
Polymorphism getRole() overridden in Candidate
Encapsulation Data held in model classes (Job, Candidate, Application)

How to run

Requirements: Java 14 or above (uses switch expressions)

# Compile
javac Main.java

# Run
java Main

No external libraries needed. All data is saved automatically to candidates.txt, jobs.txt, and applications.txt in the same folder.


Sample flow

===== SKILLMATCH ATS =====
1. Recruiter Portal
2. Candidate Portal
3. Exit

--- Candidate Menu ---
1. Register
...
5. Apply for a Job

Enter Your Candidate ID: 1
Enter Job ID to apply for: 2

=== APPLICATION RESULT ===
Match Score  : 66.7%
Missing Skills: [docker, kubernetes]

File structure

Main.java              → entire source code (single file)
candidates.txt         → auto-generated, stores candidate data
jobs.txt               → auto-generated, stores job listings
applications.txt       → auto-generated, stores application records

Team

Ruchira Patil, Sakshi Borse, Vikhyatha Sheela, Sanika Gajbe


Project info

  • Language: Java
  • Type: Console application
  • Storage: File-based (no database)
  • Built as a 50-mark mini project demonstrating core Java and OOP concepts

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages