
Campus Interview Appearance Tracker
A Java application that processes multiple Excel files in parallel to track student interview appearances, normalize records, prevent duplicates, and generate a formatted Excel report.
Project Overview
Campus Interview Appearance Tracker is a Java application designed to process multiple Excel files and determine how many times each student has appeared for campus interviews across different companies.
The application reads and combines information from multiple Excel workbooks, handles different column naming conventions, identifies headers dynamically, normalizes student names, prevents duplicate records, and produces a formatted Excel report containing each student’s total interview count.

Technical Challenges
One of the main challenges was processing Excel files that were not necessarily structured consistently.
The application supports different variations of name and email columns, including Name, Full Name, Student Name, Candidate Name, and several email column variations. It also searches multiple rows to identify the actual header row instead of assuming that headers always appear in the first row.
Another challenge was preventing duplicate student records when combining information from multiple files.
The processing is divided into two phases. Files containing email information are processed first to build name-to-email mappings and track appearances. Files without email columns are then processed using the existing mappings, helping identify existing students without creating unnecessary duplicate entries.
Student names are normalized before comparison so variations such as different capitalization, additional spaces, and special characters can still be recognized as the same student. The application also processes every sheet within each workbook while safely handling empty sheets and duplicate entries.
Performance was another important consideration. The application uses a configurable thread pool for concurrent processing and streaming techniques to keep memory usage efficient when working with multiple Excel files.
Project Gallery

Key Highlights
The project demonstrates several practical Java data-processing concepts:
- Parallel processing of multiple Excel workbooks
- Multi-sheet Excel file processing
- Flexible column-name detection
- Automatic header-row detection
- Two-phase processing to reduce duplicate records
- Student name normalization
- Name-to-email mapping
- Thread-safe concurrent processing
- Streaming-based memory-efficient processing
- Progress tracking and performance monitoring
- Formatted Excel report generation
- Ranking students based on total interview appearances
Campus Interview Appearance TrackerA Java-based data-processing tool that turns inconsistent interview spreadsheets into a consolidated and structured student report.

The generated Interview_Appearance_Report.xlsx contains student rank, name, email, and total interview count, with students sorted from the highest number of appearances to the lowest.
In the documented example, the application processed 11 Excel files containing 605 student records and produced a report containing 433 unique students, completing the processing in 2.643 seconds using 16 threads.