Written in Java, this application concurrently simulates one day's activities at a fictitious firm. All employees are represented as independent threads using passive resources to synchronize the threads as necessary. All significant events are logged as text-based output with the simulation time at which they occur.