NG

A human resources system
for the Commission

A working prototype, built against the Terms of Reference, running on real data

The problem, as the Commission describes it

Personnel records are kept in physical folders stored in filing cabinets. Manual processes in performance and talent management, leave and attendance tracking are cumbersome, tedious and ineffective, leading to inefficiencies, potential errors and delayed reporting.

Terms of Reference, Background

Every screen in this prototype exists to retire one of those processes.

Ten modules were specified

ERMEmployee records
TAMTime and attendance
LMMLeave
ESSSelf-service
ERMMElectronic records
SPMSPerformance
EIDExecutive dashboard
RRMRewards
AWAMWork arrangements
SECSecurity and backup

All ten are built and running.

What is running right now

70Staff on the register
2,492Attendance records
140Leave applications
85Registered letters
46Appraisals
99Action notices
2,273Audit entries
3,183Records in total

These figures are read from the live database as this page loads. The deck cannot drift from the system.

The filing cabinet, opened

One record per person holds personal data, employment details, service record, family, education, work experience, training, discipline and scanned documents.

  • All thirteen action-notice types the ToR lists, from new hire to retirement
  • Each notice changes the record: a promotion moves the designation, a transfer moves the unit, an increment moves the step
  • Reports include the master list, demographics, separations and a report the Commission defines itself
On the register today
Kanifing62
Upper River Region4
North Bank Region4
Male38
Female32
Separated, on file2

Attendance, without the book

2,492 clock-ins are already in the register, each judged against that person's own schedule and against 12 national holidays.

  • Flexi-time, shift and attendance-exempt schedules, assigned per person
  • Daily register, monthly time record, overtime converted to compensatory credit
  • A date locker freezes a period once it has been processed
Three ways a punch arrives
Biometric terminalsimulated
Phone app, geofencedsimulated
Text-file uploadreal

The upload path is genuine: it is how all 2,492 records in this demo were loaded, so the parser, the duplicate handling and the rejection report are all exercised.

The rule the ToR is most specific about

The system should reject all login attempts outside the NHRC office premises or IP addresses.

Terms of Reference, Time and Attendance

It does. Move the toggle outside the geofence in the demo and the clock-in is refused, with the reason named.

Time off, standardised

140 applications sit in the system, 29 of them still awaiting a decision. 9 leave types are configured, and the Commission can add more without a developer.

  • Entitlements generated for everyone in one action, balances kept by a ledger
  • Approval refuses to overdraw a balance, and says so plainly
  • Weekends and national holidays are never counted as leave days
The ToR's own promise

"assuring that no applications will be left unattended"

There is a report for exactly that: applications pending longer than a week, listed by age, so nothing quietly stalls in an inbox.

Staff serve themselves

60 requests have been filed by staff from their own accounts: overtime, duty travel, mission orders, time-record corrections and training.

Their own recordEvery section the ToR lists, read-only
RequestsFiled, tracked, decided, with the reason recorded
The staff roomNews, policies, a suggestion box and a forum

Approvals route to the applicant's own supervisor. HR and the executive see everything.

The registry, searchable

85 letters registered inward and outward, 38 documents in the library, 4 minutes written on shared documents.

  • Correspondence routed to an officer with an instruction, then marked actioned or archived
  • Indexed by keyword and by file series, searchable by reference, sender or subject
  • Documents are visible only to their owner and the people they were shared with
Real correspondents in the demo
Gambia Police Force Headquarters
Mile 2 Central Prison
Ministry of Justice
OHCHR West Africa
Female Lawyers Association

Appraisals that close

46 office and individual performance reviews carrying 195 agreed outputs, each scored on quality, efficiency and timeliness.

  • Draft, submitted, rated, finalised: a form cannot be scored before it is submitted
  • Directorate heads watch completion instead of chasing paper
  • The rating scale is the Commission's to define
Ratings awarded so far
Outstanding9
Very Satisfactory13
Satisfactory6
Unsatisfactory2

A real distribution, including the uncomfortable end. A demo where everyone is outstanding is not a demo of a performance system.

What management sees

Every figure the ToR asks for on the executive dashboard, computed live:

HeadcountBy age, gender, directorate, region, qualification
TodayPresent, absent, on leave, not clocked in by 09:00
ComingRetirements and contract endings within six months
AttentionAccumulated lateness and leave, turnover rate
PeopleBirthdays this month, staff per location
WaitingEverything awaiting a decision, in one number

Who did what, and when

2,273 audit entries have accumulated across 58 accounts simply by the system being used.

  • Five roles, and every screen guarded by the role that should reach it
  • The password policy is the Commission's to set: length, characters, expiry
  • Backups record real sizes, and a restore drill proves they can be restored
The honest boundary

Four things cannot be real in a demo: the biometric terminals, the phone app, the payroll system and the offsite backup store. Each one is built as a working simulation and labelled simulated on screen. Nothing pretends to be what it is not.

Built for how the Commission actually connects

Nothing loaded from abroadNo content networks, no web fonts, no third-party scripts. Every asset is served by the Commission's own server.
Pages, not applicationsScreens render on the server, so a slow connection delays a page instead of breaking an app.
Works on the phoneEvery screen and every action, down to a 375 pixel display. Nothing is desktop-only.

Flask and PostgreSQL, the same stack behind our other Gambian public-sector systems.

How we know it works

Every page, every role. An automated crawl signs in as each of the five roles and follows every link it can reach. All return successfully.
The demo cannot reach production. Tests prove that a production configuration refuses demo sign-in, refuses seeding and refuses a database reset.
The data is generated through the system itself. Every record was created by driving the same screens a user drives, so loading the demo also tests the validation, the workflow and the audit trail.
Nothing on screen is decoration. No placeholder text, no sample rows, no buttons that do nothing. Where there is no data, the screen says so and offers the next action.

What we would need from the Commission

The biometric terminals. Which devices are in place or planned, and how they export: a network protocol, a vendor kit, or a file. The file path already works.
The payroll system. Which system receives the monthly figures, and in what format. The export is built; the shape of it is yours to confirm.
Your own establishment. The real directorates, grades, designations and leave policy, to replace the structure we modelled from the ToR.
Where it should live. Hosting and any expectation about where staff data physically resides.

Four of the ten modules would also benefit from a working session with the officers who use them daily: records, leave, performance and the alternative work arrangements the ToR leaves open.

NG

It is not a mock-up.
It is the system, running.

Open it, sign in as any of the five roles, and try to break it.

Back to the system