personal project · completed
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.
Problem
Organizations needed a unified HR platform covering leave, time, attendance, and self-service — with tenant customization, approval workflows, and enterprise security (MFA, OAuth).
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.
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.
Business Impact
Complete HRMS platform demonstrating multi-tenant SaaS architecture with enterprise security and comprehensive HR module coverage.
Technical Decisions
- Modular monolith over microservices for operational simplicity
- MUI + Toolpad Core for consistent enterprise HR UI patterns
- Passport OAuth for Google/Microsoft SSO integration
Feature Breakdown
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