← Back

St. John's Rooms

Enterprise Student Accommodation Lifecycle Platform

system_status: CRITICAL

> ERROR: Data Silos Detected.
Finance team unaware of student departures. Maintenance team unaware of room vacancies.

> LEGACY_INFRASTRUCTURE:
Fragmented systems: Paper contracts, email reports, clipboard inspections.

> REQUIREMENT: Establish Single Source of Truth for 600+ units.

Architecture: Digital Lifecycle Management

I architected a comprehensive web application that digitizes every touchpoint of the accommodation process. It is a state-machine-driven workflow engine.

St John's Rooms List View
FIG 1.0: ROOMS MANAGEMENT LIST
St John's Room Detail View
FIG 1.1: ROOM DETAIL & ASSETS

Core Subsystems

  • 01
    Temporal Data Modeling ("Time Travel") Database schema using temporal validity intervals (valid_from / valid_to). Allows historical queries like "Who occupied Room 101 on Nov 12th?" for dispute resolution.
  • 02
    Serverless Image Pipeline Asynchronous queue worker to process thousands of high-res student photos during "Inventory Weekend". Auto-rotates, compresses (WebP), and resizes.
  • 03
    Digital Signature Audit Trail PDF generation via Browsershot. Secure "click-to-sign" workflow capturing IP and timestamps for legal compliance.
// CHALLENGE: CONCURRENCY
PHP
1// Utilized database row locking and atomic transactions
2// to prevent double-bookings during peak traffic.
3DB::transaction(function () use ($room, $user) {
4 $allocation = Allocation::where('room_id', $room->id)
5 ->lockForUpdate()
6 ->first();
7 // ... logic
8});

Technology Stack

Laravel 12
Azure AD (SAML)
Playwright E2E
MySQL 8.0

System Metrics

Contracts / Year
1,200+
Media Processed
3,000+
Admin Errors
~0