← Work
作

Case study

Avoda

Time Tracking, Team & Payroll Platform

Role

Web app & APIIndependent

Scope

Timers · timesheets · leave · automated payroll

Stack

ReactNestJSGraphQLPrismaPostgreSQLRedisBetter AuthAWS S3

What I built.

  1. 01

    Build and maintain both the web app and the server behind it, usually delivering each feature end to end, from how the data is stored to the page people click through.

  2. 02

    Sign-up and login by email and password, Google sign-in or a one-time code, with password reset and account deletion.

  3. 03

    Organisations invite members as admins, managers or employees, and each role sees and can do different things.

  4. 04

    Clients, projects and tasks with status, priority and estimated hours; timers with session history, desktop screenshots, and alerts when a timer is left running.

  5. 05

    Timesheets and weekly reports for reviewing and approving tracked hours, with timesheets and payroll exported to CSV and PDF.

  6. 06

    Pay rates by role with per-project overrides and an audit trail, feeding payroll runs that are calculated from tracked hours and can run automatically on a schedule.

  7. 07

    Leave requests with manager approval, balances, accrual rules, notice periods and an email at every step.

  8. 08

    Every change goes through a reviewed pull request with automated checks and an AI-assisted review, then a staging release before it goes live; errors in production are reported automatically.