Back to Projects
AllBarber hero image 1

The Challenge

Barbershops often rely on disconnected tools for booking, payments, customer updates, staff coordination, and reporting. AllBarber needed to unify those workflows without slowing down the front desk during a busy service day.

The Solution

I helped build a multi-tenant SaaS platform with real-time queues, Stripe Terminal POS, role-aware dashboards, staff scheduling, CRM, inventory, and automated operational workflows.

System Architecture & Key Features

1. Relational Data Isolation: The 34-Table Schema

I designed a 34-table relational PostgreSQL schema for a multi-tenant environment spanning shops, staff roles, services, customers, queues, tickets, payments, tips, and reporting. Supabase Row Level Security policies enforce tenant-scoped access so each barbershop only reaches its own operational data.

2. Asynchronous Event-Driven Engine

Appointment workflows depend on background work that cannot silently fail. I implemented an event-driven engine with Inngest to handle scheduling jobs, notification fanouts through Twilio and email, and retryable workers for booking confirmations and customer updates.

3. Performance & Scaling

To keep dashboards responsive under heavier usage, I used tenant-scoped caching strategies and optimized query paths around the highest-traffic views. The platform was deployed on Microsoft Azure and validated through intensive load testing around 1,000-user scenarios.

The Biggest Bottleneck: Stripe POS Integration

The Problem

The most complex part of the build was automating the financial workflow. Stripe Terminal had to support physical point-of-sale transactions while the platform calculated tips, refunds, and multi-barber payout logic inside a single shop tenant. Webhooks, asynchronous payment states, and multi-party accounting made this the riskiest integration in the product.

The Solution

I took ownership of the payment routing logic, mapped the asynchronous Stripe state transitions, and rebuilt the payment handler around webhook validation, isolated testing, and auditable Tip Ledger updates. The final flow automated payout calculations that would otherwise create hours of manual administrative work for shop owners each week.

Testing, Quality, & Team Delivery

Automated QA

For a team of six, I helped establish a multi-layer testing approach with Playwright for end-to-end flows and Vitest for lower-level logic. This caught edge cases earlier in development, especially around booking, role permissions, and payment workflows.

Delivery Velocity

I also pushed for stronger peer review habits, clearer Git workflows, and standardized backend response contracts so frontend and backend work could move in parallel with fewer handoff issues.

Interface Gallery

AllBarber screenshot 1
AllBarber screenshot 2
AllBarber screenshot 3
AllBarber screenshot 4
AllBarber screenshot 5
AllBarber screenshot 6
AllBarber screenshot 7

Keep Exploring

FIELD SURVEY v26.10 — MINH TAM NGUYEN

>LOCATING OBSERVER ........................................51.0447°N 114.0719°W

>READING ELEVATION ........................................1,045 M

>RAISING THE ROCKIES ........................................OK

>CALIBRATING INSTRUMENTS ........................................OK

CLICK TO SKIP