Skip to content
Ahsan Mehmood
All work

Independent product

PayFlow Pro

Multi-tenant workforce platform: company onboarding, employee contracts and payroll, check-in attendance, live monitoring, leave approvals and team messaging in one product.

Problem

Growing companies usually run HR, payroll, attendance and team chat in separate tools that do not share data. PayFlow Pro brings them into one multi-tenant product, so each organization runs its workforce operations in one place.

Because it handles pay, contracts and approvals, every important action also needs to be traceable.

My role

Designed, built and deployed the product end to end: product scope, data model, the Angular front end, the Node.js API and real-time layer, and the deployment on Google Cloud Run.

Screenshots

Architecture

PayFlow Pro architectureAn Angular single-page app and biometric attendance input connect to a Node.js API and a WebSocket real-time layer running on Google Cloud Run. The backend uses PostgreSQL, Redis and Firebase, and sends payslip emails.Google Cloud RunHTTPSWSSAngular SPAadmin · manager · employeeBiometric attendancecheck-in eventsNode.js APIpayroll · leave · approvals · auditReal-time layerWebSockets · chat · live attendancePostgreSQLRedisFirebaseEmailpayslips
Angular client talking to a Node.js API and WebSocket layer on Cloud Run, backed by PostgreSQL and Redis, with Firebase alongside.

Key technical decisions

  • Self-serve company onboarding

    An organization registers and gets its own company account and domain. Its admins then onboard employees with full details, including a contract with an hourly rate or a fixed salary.

  • Multi-tenant with role-based access

    One deployment serves many organizations. Access is split into Super Admin, Manager and Employee roles, so each user only sees and approves what their role allows.

  • Real-time over WebSockets

    Chat, channels, file sharing and live attendance monitoring push updates to the browser over WebSockets instead of polling.

  • Audit log as a core feature

    Payroll runs, disbursements and approvals are sensitive, so the product keeps a full audit log rather than treating it as an add-on.

  • Workflows end in real artefacts

    Payroll runs produce disbursements and payslip emails, and leave requests go through approvals with CSV export for reporting.

  • Serverless containers on Cloud Run

    The application runs on Google Cloud Run, so it scales without managing servers.

Results

  • Live in production on Google Cloud Run.
  • Payroll, attendance, leave, chat and audit in one product instead of separate tools.

Stack

  • Angular
  • Node.js
  • PostgreSQL
  • Redis
  • WebSockets
  • Firebase
  • Google Cloud Run