Efe

Efe

SOULTEL

Full-Stack Developer & Open Source Enthusiast

Back to Projects

Employee Wage Calculator

Object-oriented console application in Java for calculating and managing employee wages with automated data processing.

JavaObject-Oriented ProgrammingConsole ApplicationData ProcessingUniversity Project
Employee Wage Calculator

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
    TEXT
    data/work_hours
    folder
  • 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)

  1. Data Sources

    • Automatic discovery of work hours files in designated folder
    • Structured employee catalog with consistent data format
    • Robust file parsing with error handling
  2. 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
  3. Reporting System

    • Alphabetical employee wage listing
    • Missed hours priority ranking (most missed hours first)
    • Comprehensive financial summaries for management
  4. 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

JAVA
// 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.