BYKII ERP — HR, Attendance & Payroll Platform
Contributing engineer on a multi-tenant HR and payroll ERP: effective-dated compensation logic and AES-256-GCM encryption for employee data.
- Client : Bykii-Tech
- Duration : Ongoing since April 2026
- Year : 2026
- Tags : NestJS , TypeScript , PostgreSQL , Prisma , Multi-Tenant , Encryption
The problem
Payroll is one of the few domains where the current value is never enough. A salary change signed today can take effect next month, be back-dated to last quarter, or be corrected after payslips have already gone out — and a system that only stores the latest number cannot answer what an employee was actually owed on a given date. Compensation is also exactly the kind of personal data that should not sit in plain text inside a shared database.
My role
I contribute to BYKII ERP as one engineer on a team; I do not own the product. My work concentrates on two subsystems — the effective-dated compensation logic and the field-level encryption of sensitive employee data — plus a share in the platform data architecture described below, which I co-designed rather than authored alone.
Architecture
- Compensation is modelled as effective-dated records instead of mutable fields, so every rate carries the window it applies to. Payroll asks the model what was true on a date rather than reading whatever the row happens to hold today, which turns back-dated changes and retrospective corrections into a query instead of a data migration.
- Sensitive employee fields are encrypted at the field level with AES-256-GCM, so the protection travels with the value into backups and replicas. GCM is an authenticated mode, which means tampering is detected rather than silently decrypted into something that looks valid.
- I co-designed the cost-efficient multi-tenant PostgreSQL architecture the ERP shares with the rest of the platform: roughly 200 tables, deliberately balancing tenant isolation against operational simplicity and query performance instead of defaulting to a database per tenant.
- Structured seed tooling gives the team reproducible environments, so a developer or a demo tenant starts from a known dataset rather than hand-built fixtures that no two machines agree on.
Technologies
NestJS 11, TypeScript, PostgreSQL, Prisma, Turborepo, AES-256-GCM field-level encryption.
Outcome
The modules I work on cover HR, attendance, payroll and compensation. The effective-dated model means historical payroll can be reconstructed and audited for any date instead of being reverse-engineered from change logs, and the encryption work keeps sensitive employee fields unreadable to anyone holding raw database access. The roughly 200-table multi-tenant design keeps every tenant on shared infrastructure — the cost decision that made the product viable — without giving up isolation. Development is ongoing.