DK

Back Office Web Application for GSB Passbook Update Machine (PUM) System

A multi-tier Java EE operations system for the Government Savings Bank of Thailand, automating passbook update machines across hundreds of bank branches.

GSB-PUM is a four-tier system that automates passbook update machines (PUM) for the Government Savings Bank (ธนาคารออมสิน) — one of Thailand's largest state-owned banks. The system has been built and maintained by PromptNow's automation team over multiple years; I'm one of several developers on the team, focused primarily on the Back Office web application with smaller contributions to core service integrations and report-export tooling.

Multi-Tier Architecture (team work)

Four codebases coordinated under a single release cadence: an on-device CyberDriver agent, a Core Service backend for switching-API integration, a JSP-based Back Office for operations staff, and a shared DB/infrastructure tier.

Back Office at Scale (team work)

The Back Office is a Wildfly-hosted Java EE application of ~300 JSP pages covering machine management, patch tracking, audit logging, configuration, user/role permissions, and operational reporting across GSB's branch network.

My Focus — Report Pages and Multi-Format Exports

Most of my own work lives on the Back Office report pages: adding columns to existing reports, wiring up Excel / PDF / CSV exports for new ones, and keeping all four output formats (HTML / Excel / PDF / CSV) column-aligned from a single source-of-truth dataset so a column added once propagates everywhere. I've also authored a small library of internal tooling — reusable skills the team uses for export wiring, data-field synchronization, and export-reconciliation auditing — that codifies patterns the team converged on across many similar reports.

Code Quality & CI (team infrastructure)

SonarCloud static analysis runs on every commit, gating merges on security, complexity, and duplication thresholds. The team ships against bank-grade quality bars with an Ant + Wildfly + GitLab CI build chain.