Employee Wage Calculator
An object-oriented console application developed as a homework project for University of Pécs Faculty of Engineering and Information Technology 2nd Year Computer Science Engineering BSc - Programming 2 course. Built in Java to maintain and calculate employee wages with automated data processing capabilities.
What it does
- Automated data import: processes work hours data files from folderTEXT
data/work_hours - Employee management: reads employee catalog from TEXT
data/employee_catalog.txt - Wage calculations: computes normal wages, overtime pay, and missed hours penalties
- Sorted reporting: displays employee wages alphabetically by name
- Priority reporting: lists employees by missed hours (most critical first)
- Financial summaries: calculates total company payroll including wages, overtime, and productivity losses
Why it matters
- Real-world application: demonstrates practical payroll management systems
- Data processing skills: showcases file I/O and automated data import capabilities
- Business logic: implements complex wage calculation algorithms with overtime and penalty systems
- Clean architecture: follows object-oriented design principles for maintainable code
Features (detailed)
-
Data Sources
- Automatic discovery of work hours files in designated folder
- Structured employee catalog with consistent data format
- Robust file parsing with error handling
-
Calculation Engine
- Standard wage computation based on hours worked
- Overtime pay calculation with premium rates
- Penalty calculation for missed hours based on base wage
- Total compensation summaries
-
Reporting System
- Alphabetical employee wage listing
- Missed hours priority ranking (most missed hours first)
- Comprehensive financial summaries for management
-
User Interface
- Console-based menu system for different report types
- Clear, formatted output for easy reading
- Interactive options for different calculations
Technical Implementation
- Language: Java (Object-Oriented Programming)
- Architecture: Clean separation between data models, calculation logic, and presentation layers
- Data Processing: File system integration for automated data import
- Error Handling: Robust parsing with validation and logging capabilities
Core Features in Action
// Employee wage calculation logic
public double calculateTotalWage() {
double normalWage = regularHours * hourlyRate;
double overtimeWage = overtimeHours * hourlyRate * OVERTIME_MULTIPLIER;
double missedHoursPenalty = missedHours * hourlyRate * PENALTY_RATE;
return normalWage + overtimeWage - missedHoursPenalty;
}Project Context
This project was completed as part of the Programming 2 course curriculum, demonstrating fundamental software engineering principles including:
- Object-oriented design patterns
- File I/O operations
- Data structures and algorithms
- Clean code practices
- Error handling and validation
The application successfully processes real employee data and provides actionable business insights through comprehensive wage analysis and reporting.
