Wahyu.

Good evening!

About me

I’m a web development professional who turns operational needs into practical digital workflows.

I map processes, coordinate teams, and build dependable applications with modern toolsβ€”from requirements through delivery.

Wahyu
Wahyu speaking at an event
β–§ WAHYU.JPG

Companies
I’ve worked with

PT Mahkota Group Tbk Kitakale

Want the full story?

Download my CV for a closer look at my experience, skills, and professional journey.

Download CV ↓
Automation 01

Budget Usage Converter

Preparing an Odoo Budget Usage import used to run three to four months. Multi-sheet Excel now converts in a single pass, with every cost center and COA validated against Odoo before the ZIP is written.

  • Python
  • FastAPI
  • openpyxl
  • PostgreSQL
View more β†—
Portal 02

Datek MIS

650 assets β€” NUCs, PCs, laptops, printers, CCTV β€” had no asset management at all. They now sit in one platform alongside employee records, data center inventory, and master data.

  • Next.js
  • Bun
  • Prisma
  • MySQL
View more β†—
Agent Internal 03

Datek Agent Coworker

A Node.js agent that reads each machine’s real hardware β€” RAM, CPU, free disk β€” every three minutes, and heartbeats whether someone is actually using it. The monthly audit went from a week of walking desk to desk to 10–15 minutes, measured from the hardware instead of a clipboard.

  • Node.js
Automation 04

HCM Tools

Attendance recaps for payroll took 60 to 180 minutes per period. The Excel now builds itself from Odoo overtime and leave data β€” what is left is a copy-paste.

  • SvelteKit
  • Bun
  • Python
  • openpyxl
View more β†—
Analytics 05

Dashboard Mahkota Group

Operational reporting meant pulling Odoo data by hand, remapping it, then rebuilding every chart. Odoo now feeds the dashboard and Power BI directly, so a change upstream shows up on its own β€” next to live CCTV over HLS and LHP inspection reports.

  • Next.js
  • Bun
  • Prisma
  • PostgreSQL
  • Power BI
View more β†—
Monitoring 06

OMO Report Monitor

Odoo Monitoring Observer snapshots Odoo every six hours, so accounting can diff a COA between any two dates. Working out which account actually moved used to take hours of manual comparison.

  • SvelteKit
  • Elysia
  • Prisma
  • PostgreSQL
  • Cheerio
View more β†—
Documentation 07

Patch Notes

Every Odoo change used to be written up by hand. A Discord bot now captures updates as they are discussed and files them itself, so the release history stays current without anyone maintaining it.

  • SvelteKit
  • Bun
  • Prisma
  • PostgreSQL
  • Discord.js
View more β†—
Internal tool Internal 08

Daily Ticket Tracker

Odoo will not tell you which approver is holding up an AR helpdesk ticket, so I built the view it was missing. Tracing one used to cost 15 to 45 minutes; now helpdesk reads it off a list.

  • SvelteKit
  • Bun
  • Prisma
  • PostgreSQL
  • Odoo
View more β†—
Web app 09

Limit Me

Spending notes scattered across apps and paper, pulled into one place and categorised. Set a budget and a period, and it works out the daily limit that tells you when to stop.

  • Next.js
  • NextAuth
  • Prisma
  • PostgreSQL
  • React Query
View more β†—
Infrastructure Internal 10

Monitoring Stack

Checking server health meant SSHing in and reading terminals one box at a time. Metrics, logs, uptime, and container telemetry now land in a single Grafana view.

  • Grafana
  • Prometheus
  • Loki
  • Alloy
  • Uptime Kuma
  • cAdvisor
View more β†—
Automation 01

Budget Usage Converter

Preparing an Odoo Budget Usage import used to run three to four months. Multi-sheet Excel now converts in a single pass, with every cost center and COA validated against Odoo before the ZIP is written.

  • Python
  • FastAPI
  • openpyxl
  • PostgreSQL
View more β†—
Portal 02

Datek MIS

650 assets β€” NUCs, PCs, laptops, printers, CCTV β€” had no asset management at all. They now sit in one platform alongside employee records, data center inventory, and master data.

  • Next.js
  • Bun
  • Prisma
  • MySQL
View more β†—
Agent Internal 03

Datek Agent Coworker

A Node.js agent that reads each machine’s real hardware β€” RAM, CPU, free disk β€” every three minutes, and heartbeats whether someone is actually using it. The monthly audit went from a week of walking desk to desk to 10–15 minutes, measured from the hardware instead of a clipboard.

  • Node.js
Automation 04

HCM Tools

Attendance recaps for payroll took 60 to 180 minutes per period. The Excel now builds itself from Odoo overtime and leave data β€” what is left is a copy-paste.

  • SvelteKit
  • Bun
  • Python
  • openpyxl
View more β†—
Analytics 05

Dashboard Mahkota Group

Operational reporting meant pulling Odoo data by hand, remapping it, then rebuilding every chart. Odoo now feeds the dashboard and Power BI directly, so a change upstream shows up on its own β€” next to live CCTV over HLS and LHP inspection reports.

  • Next.js
  • Bun
  • Prisma
  • PostgreSQL
  • Power BI
View more β†—
Monitoring 06

OMO Report Monitor

Odoo Monitoring Observer snapshots Odoo every six hours, so accounting can diff a COA between any two dates. Working out which account actually moved used to take hours of manual comparison.

  • SvelteKit
  • Elysia
  • Prisma
  • PostgreSQL
  • Cheerio
View more β†—
Documentation 07

Patch Notes

Every Odoo change used to be written up by hand. A Discord bot now captures updates as they are discussed and files them itself, so the release history stays current without anyone maintaining it.

  • SvelteKit
  • Bun
  • Prisma
  • PostgreSQL
  • Discord.js
View more β†—
Internal tool Internal 08

Daily Ticket Tracker

Odoo will not tell you which approver is holding up an AR helpdesk ticket, so I built the view it was missing. Tracing one used to cost 15 to 45 minutes; now helpdesk reads it off a list.

  • SvelteKit
  • Bun
  • Prisma
  • PostgreSQL
  • Odoo
View more β†—
Web app 09

Limit Me

Spending notes scattered across apps and paper, pulled into one place and categorised. Set a budget and a period, and it works out the daily limit that tells you when to stop.

  • Next.js
  • NextAuth
  • Prisma
  • PostgreSQL
  • React Query
View more β†—
Infrastructure Internal 10

Monitoring Stack

Checking server health meant SSHing in and reading terminals one box at a time. Metrics, logs, uptime, and container telemetry now land in a single Grafana view.

  • Grafana
  • Prometheus
  • Loki
  • Alloy
  • Uptime Kuma
  • cAdvisor
View more β†—

Have an interesting, useful or ambitious idea you’d like some help building? Let’s talk.

2026 Β© Wahyu