Skip to content
Work

Product · Full-stack

TimeMarket

A workload-management PWA for Bank Indonesia's Gorontalo office that balances how work is delegated across employees.

Role
Web Developer (Contract)
Timeline
May 2021 — Aug 2022
Context
Bank Indonesia — Gorontalo Office
Stack
  • Laravel
  • Livewire
  • PWA
  • MySQL

Problem

As part of Bank Indonesia's internal innovation programme, the Gorontalo office needed a way to delegate work accurately, monitor it, and keep each employee's workload within a reasonable limit.

Context

It had to be usable from anywhere and easy for every employee — from staff to the head of office. Four roles were involved: Employee, Team Leader (Chief), Head of Office (KPw) and Admin, each with different rights over programmes (proker) and jobs.

Solution

  • An interactive UI with Livewire to keep development fast.
  • Mobile-first design so it works equally well on desktop and phones.
  • A semi-PWA mode: with the right metadata, the app can be installed from Chrome and opened like a native Android app.
  • A user manual for rollout.

Architecture

Layer detail

Mobile-first PWA

Installable from Chrome so it behaves like a native Android app.

Simplified architecture — select a layer to inspect it.

Technical challenges

The permission model was the core of the product: who can create, edit, transfer or complete a job depends on the role and on whether the user leads that programme.

FeatureEmployeeChiefHead of OfficeAdmin
View programmes & jobsYesYesYesYes
Add programme—Yes——
Edit programmeIf programme leadYes—Yes
Add / edit / delete jobIf programme leadIf programme lead——
Transfer job to othersIf programme leadIf programme lead——
Mark job completedYes———
Main calendarYesYesYes—

Impact

user roles with distinct permissions
4user roles with distinct permissions
full-stack build of v1
6 mofull-stack build of v1
contract extended for a second version
v2contract extended for a second version

The contract was extended for a second version, delivered in 3 months, followed by 6 months of maintenance.

Lessons learned

For internal tools, adoption beats features. Making it installable on the phones people already carried did more for usage than any single feature.