Skip to content
personal project· completedProject 08 / 10

HR Workspace Suite (Leave & HRMS)

Production-grade multi-tenant HRMS — leave management with policies/accrual/Bradford score, time tracking, attendance with geo/map, self-service, onboarding, org branding, MFA, and multi-language support.

  • React 18
  • Vite
  • MUI v6
  • Redux
  • Toolpad Core
  • Express
  • TypeScript
  • MongoDB
  • JWT
  • Passport
  • SendGrid
  • Twilio
  • i18next

01

Problem

Organizations needed a unified HR platform covering leave, time, attendance, and self-service — with tenant customization, approval workflows, and enterprise security (MFA, OAuth).

02

Solution

Built full-stack HR Workspace Suite with modular monolith backend (Express + TypeScript + MongoDB) and React + MUI frontend with Toolpad Core, covering leave, time, attendance, onboarding, and org settings.

03

Architecture

Modular monolith Express backend with feature modules (leave, time, attendance, self-service, onboarding, org). React 18 + Vite + MUI v6 + Redux frontend with i18next, Lexical editor, and Google Maps integration.

04

Business impact

Complete HRMS platform demonstrating multi-tenant SaaS architecture with enterprise security and comprehensive HR module coverage.

Decisions

Technical decisions

  1. 01Modular monolith over microservices for operational simplicity
  2. 02MUI + Toolpad Core for consistent enterprise HR UI patterns
  3. 03Passport OAuth for Google/Microsoft SSO integration

Features

Feature breakdown

  • Leave Management
  • Time Tracking
  • Attendance
  • Self-Service
  • Onboarding
  • Org Branding
  • MFA
  • Multi-language

Responsibilities

  • Architected multi-tenant modular monolith with feature module isolation
  • Built leave tracker with policies, accrual, approvals, and Bradford score
  • Implemented time tracker, attendance with geo/map, and self-service modules
  • Developed MFA (email/SMS/TOTP), OAuth (Google/Microsoft), and org branding

Challenges

  • Ensuring strict tenant data isolation across all HR modules
  • Modeling complex leave policies with accrual rules and Bradford factor calculations

Performance considerations

  • Tenant-scoped cache keys
  • Indexed tenant_id on all queries
  • i18next lazy-loaded locale bundles

Lessons learned

  • Multi-tenancy requires tenant context propagation at every layer — middleware, queries, and caching
  • Modular monolith enables rapid HR module delivery without microservice overhead