Back to selected work
Waffle Up Global PTE, Singapore
Nov 2025 - Present

Promo campaign, card redemption, and rollout operations console

Built an operations-heavy promo platform spanning batch imports, card lifecycle management, Klikit campaign workflows, POS testing, and rollout readiness.

Role / engagement

Full-Stack / Frontend Engineer

Controlled operations with strong system visibility

Challenge

Operators needed one system for campaign setup, legacy batches, redemption testing, and rollout control, while the frontend still had to respect backend constraints around roles, branch eligibility, and idempotent redemption.

Outcome

Delivered a Surprise Card Engine MVP with PostgreSQL, NestJS services, and a Next.js admin console covering login, batches, cards, Klikit sync, reporting, readiness checks, and POS simulation.

Impact

  • Consolidated campaign operations, legacy batch handling, and system status into one admin workspace.
  • Enabled import, inspect, activate, disable, and reconciliation flows through guided UI instead of ad hoc scripts.
  • Made rollout safer with readiness checks, mock/live Klikit modes, and a built-in POS tester for replay and failure-path validation.

Stack

Node.js
Next.js
React
TypeScript
PostgreSQL
Tailwind CSS
shadcn/ui
JWT auth
Swagger
Docker Compose

Capabilities

Internal dashboards
Operational UX
Workflow simulation
Role-aware interfaces
API-backed reporting

Access status

Private client work. The case study covers architecture, operations workflows, and rollout logic, but the deployment is not publicly shareable.