Skip to content
Duch Panhathun.

Phnom Penh, Cambodia

Duch Panhathun

Software Engineer — AI/ML & Full-Stack

I build applied machine learning and production web systems — from computer-vision models and LLM pipelines to the APIs, dashboards and payment flows around them.

Published research
Fraud detection, DOI-indexed
Pan-SEA AI Challenge 2025
Top 20 of 100+ ASEAN teams
Core stack
Python · TypeScript · AWS

01 — About

What I work on

I'm a software engineer working across applied machine learning and full-stack product engineering. Most recently I was a Python Engineer at Ailsa HQ Limited, a UK AI grant-funding platform, and an IT Consultant at Save the Children Cambodia — holding both roles concurrently through 2026.

My work tends to sit where models meet real systems. On one side that means training deep-learning classifiers, engineering features for tabular models, and wiring LLM and embedding pipelines. On the other it means the unglamorous half that makes those things usable: REST APIs, access-control systems, payment integrations, admin dashboards and the deployment around them.

A lot of that work has been for Cambodia and the region — crop-disease recognition delivered to farmers through a Telegram chatbot, a point-of-sale and ERP system for a coffee business, national QR payment rails, and bilingual Khmer/English interfaces. I care about software that reaches people who aren't well served by the default assumptions of most products.

I graduated in Information Technology Engineering from the Royal University of Phnom Penh in 2025, and published my thesis research on payment-fraud detection independently.

02 — Projects

Selected work

Each of these shipped for a real organisation. Descriptions cover what the system does, my own role, and the technical decisions that mattered most.

AI Grant-Funding Platform

May 2025 – Aug 2026

Ailsa HQ Limited

A six-service platform that helps businesses discover grant funding, match against it, and manage their applications — with AI integrated throughout.

My role

Python Engineer — built the production scraping tier and the customer-facing application, and contributed to the matching engine and API gateway.

  • Built five funder-specific scrapers for major UK and EU funding bodies, each using a different extraction strategy: undocumented JSON API reverse-engineering, HTML parsing, hybrid headless-browser fallback, and sitemap-less crawling — with dedicated automated test coverage for each.
  • Designed the normalisation layer mapping five heterogeneous funder sources onto a single grant model, plus a compatibility adapter bridging a new schema onto the platform's legacy one.
  • Built a provider-agnostic LLM classification and structured-extraction layer across OpenAI and Anthropic, filtering scraped pages down to relevant application data.
  • Bootstrapped and served as primary engineer for the customer-facing SaaS app from an empty repository — authoring the founding commit and ~62% of all commits.
  • Designed a department- and section-level access-control system, deriving section ownership transitively from user–department membership rather than requiring a schema migration.
  • Contributed to the AI matching engine, pairing funding opportunities to company profiles using embedding-based vector search.
  • Python
  • FastAPI
  • Next.js
  • MongoDB
  • AWS SQS
  • Auth0
  • OpenAI
  • Anthropic
  • Docker

Plant Disease Recognition

Nov 2025 – Jun 2026

Save the Children Cambodia

Deep-learning models that identify diseases in cucumber and cauliflower crops from a photo, delivered to farmers through a Telegram chatbot that also recommends treatment.

My role

Trained the models and built the surrounding services — the weather advisory microservice and the admin dashboard.

  • Trained and deployed deep-learning models across two crop families — ConvNeXt-Large and EfficientNet-B5 for cucumber (98.06% test accuracy, 94.82% macro-F1 across 7 classes) and EfficientNetB3 for cauliflower (99.74% test accuracy, 99.68% macro-F1 across 5 classes), each measured on a held-out test split.
  • Built complete training pipelines in both PyTorch and TensorFlow/Keras: focal loss for class imbalance, mixed-precision training, cosine learning-rate scheduling, stratified splitting and augmentation, resolving non-trivial Keras 3.x / HuggingFace compatibility issues along the way.
  • Built a weather advisory microservice combining government meteorological data with the Windy API, localised into Khmer and deployed as both a scheduled scraper and a REST API.
  • Built and deployed the bilingual admin dashboard, including automated weather-alert cron jobs.
  • PyTorch
  • TensorFlow / Keras
  • Python
  • Telegram Bot API
  • Next.js
  • Docker

Coffee Business Management System

Nov 2025 – Jun 2026

Save the Children Cambodia

An end-to-end system for running a coffee business: a point-of-sale terminal, an ERP back office, a customer ordering website, and a Telegram Mini App.

My role

Built the system across all four surfaces, including the loyalty backend and payment integrations.

  • POS and ERP dashboard (Angular + NestJS): a cashier terminal with dual-currency USD/KHR denomination-level cash handling, plus back-office payroll, purchasing, profit-and-loss reporting, and a recipe-costing engine computing live food-cost margins from ingredient stock.
  • Customer ordering website (Next.js + NestJS): menu ordering, a stored-value wallet, and a gamified loyalty system of points, rank tiers, missions and collectible stamps.
  • Telegram Mini App (TypeScript): conversational ordering, account linking and order notifications.
  • Integrated Cambodian QR payment rails (Bakong/KHQR and ABA PayWay) — QR intent generation, polling-based settlement and bank-app deep-linking.
  • Integrated OpenAI structured-output generation to assign personalised loyalty badges, validated against a closed catalogue with a deterministic fallback so an AI failure can never break a transaction.
  • Implemented an idempotency-key interceptor making payment-mutating endpoints safe against client retries.
  • Angular
  • NestJS
  • Next.js
  • TypeScript
  • PostgreSQL
  • Telegram Mini Apps
  • Bakong KHQR
  • OpenAI

Partnership Management System

Feb 2024 – Mar 2025

Save the Children Cambodia

An internal system for managing partnership records and organisational relationships, built around Cambodia's real administrative geography.

My role

Authored roughly 85% of both the backend and the frontend.

  • Modelled a four-level Cambodian administrative geography hierarchy — province → district → commune → village — with cascading dependent address selection on the frontend and eager-loaded hierarchical queries on the backend.
  • Built multi-file document management, a report submission and review workflow, and role-based access control.
  • Containerised the full stack for both development and production.
  • Laravel
  • Next.js
  • PostgreSQL
  • Docker

Also built

CCYMCR Website & CMS

Mar 2026

Cambodia Children and Young People Movement for Child Rights

A website for a children's-rights NGO with a hand-built content management system, so non-technical staff can update every part of the site themselves.

  • Next.js
  • Supabase
  • Tailwind CSS
  • Leaflet
  • Vercel

Garden Options Website

Dec 2025

Garden Options — Scottish Borders, UK

A single-page, conversion-focused marketing site for a family-run landscaping business, published to a live custom domain.

  • Framer
  • React
  • EmailJS

Remote Positive Parenting Platform

Feb 2024 – Mar 2025

Save the Children Cambodia

A Khmer-language website and Telegram chatbot broadcasting parenting and child-protection guidance to parents.

  • React
  • Firebase
  • Python
  • Flask
  • Telegram Bot API

03 — Experience

Where I've worked

Two roles ran concurrently through 2026 — a UK AI platform and an NGO consultancy in Phnom Penh.

  1. Python Engineer

    25 May 2025 – 23 Aug 2026

    Ailsa HQ Limited

    AI-powered grant-funding discovery and application platform (UK)

    • Built the platform's production scraping tier — five funder-specific scrapers for major UK and EU funding bodies, each with a distinct extraction strategy and dedicated automated test coverage.
    • Designed the data-normalisation layer mapping five heterogeneous funder sources onto one shared grant model, plus a legacy-schema compatibility adapter.
    • Built an LLM-based classification and structured-extraction layer, provider-agnostic across OpenAI and Anthropic.
    • Contributed to the AI grant-matching engine using embedding-based vector search, and built machine learning for opportunity-to-company matching.
    • Bootstrapped and served as primary engineer for the customer-facing SaaS application, authoring the founding commit and ~62% of all commits.
    • Designed a department- and section-level access-control system enforced across both the admin tool and the customer app.
    • Designed a service-to-service authentication mechanism letting an external AI agent report structured data back into the production API.
    • Implemented an asynchronous scraping pipeline on AWS SQS with MongoDB-backed status tracking and audit logging.

    Python/FastAPI microservices · Next.js · Node.js/Express · MongoDB · AWS (EC2, ECS, Lambda, SQS, S3, EventBridge, CloudWatch, Parameter Store, Amplify, Route 53) · Auth0 · OpenAI & Anthropic · Docker, Terraform, GitHub Actions

  2. IT Consultant

    16 Nov 2025 – Jun 2026

    Save the Children Cambodia

    Plant Disease Recognition (AI/ML)

    • Trained and deployed the crop-disease recognition models behind a Telegram chatbot — ConvNeXt-Large and EfficientNet-B5 on a 7-class, 8,223-image cucumber dataset (98.06% test accuracy, 94.82% macro-F1 on 1,235 held-out images), and EfficientNetB3 on a 5-class, 7,754-image cauliflower dataset (99.74% test accuracy, 99.68% macro-F1 on 776 held-out images).
    • Built complete training pipelines in both PyTorch and TensorFlow/Keras, including focal loss, mixed-precision training, cosine LR scheduling, stratified splitting and augmentation.
    • Built a weather advisory microservice combining government meteorological data with the Windy API, localised into Khmer.
    • Built and deployed the bilingual admin/CMS dashboard with automated weather-alert cron jobs.

    Coffee Business Management System

    • Built an end-to-end system spanning a POS terminal, ERP dashboard, customer ordering website and Telegram Mini App.
    • POS and ERP (Angular + NestJS): dual-currency USD/KHR denomination-level cash handling, payroll, purchasing, profit-and-loss reporting, and a live recipe-costing engine.
    • Customer web (Next.js + NestJS): ordering, a stored-value wallet and a gamified loyalty system.
    • Integrated Cambodian QR payment rails (Bakong/KHQR, ABA PayWay) and an OpenAI-driven loyalty badge feature with validation and deterministic fallback.
    • Implemented an idempotency-key interceptor making payment endpoints safe against client retries.

    PyTorch, TensorFlow/Keras, Python · Angular, NestJS, Next.js, TypeScript · PostgreSQL · Telegram Bot API & Mini Apps · Socket.IO · Docker

  3. IT Intern

    1 Feb 2024 – 1 Mar 2025

    Save the Children Cambodia

    • Built the Remote Positive Parenting platform — a Khmer-language website and Telegram chatbot — including the admin CMS and a campaign/quiz broadcast scheduler.
    • Built a machine-learning model for cucumber-family plant disease recognition, served through a Telegram chatbot.
    • Built the Partnership Management System, including a four-level Cambodian administrative geography hierarchy, document management, a report review workflow and role-based access control. Authored ~85% of both backend and frontend.

    React, Firebase · Python, Flask · Laravel, Next.js, PostgreSQL, Docker

Short-term contracts & freelance

  • Data Collector Vikasa Advisory and Academy

    28 Apr – 8 May 2026
  • Web Development Consultant CCYMCR

    16 – 30 Mar 2026

    Built a bilingual NGO website with a hand-built CMS spanning ~30 editable content sections.

  • Web Developer Garden Options (Scottish Borders, UK)

    16 – 30 Dec 2025

    Single-page marketing site in Framer with a custom React contact-form component wired to EmailJS.

  • Freelance Data Interpretation CWEA Project

    28 Mar – 1 May 2025

    Data interpretation and visualisation (Python, Excel).

  • Freelance Data Collector Confluences Asie Co., Ltd.

    12 Sep – 2 Oct 2023

04 — Research

Published research

My undergraduate thesis, published independently and DOI-indexed.

Improving Online Payment Fraud Detection with Feature Engineering and Cost-Sensitive Machine Learning

Royal University of Phnom Penh · 8 June 2025

An end-to-end machine-learning pipeline for financial fraud detection, published independently on Zenodo under CC-BY 4.0 and indexed on ResearchGate.

Transactions analysed
6.36MTransactions analysed
ROC-AUC (CatBoost)
99.96%ROC-AUC (CatBoost)
F1-score
99.79%F1-score
Algorithms compared
6Algorithms compared
  • Engineered domain-specific behavioural and temporal features on a 6.36-million-transaction dataset — account-draining detection, empirically-derived hourly risk tiers and balance-matching flags.
  • Applied statistical outlier analysis with z-score flagging and winsorisation to preserve anomaly signal while controlling extreme-value noise.
  • Compared six algorithms — CatBoost, XGBoost, LightGBM, Random Forest, K-Nearest Neighbors and Logistic Regression — addressing severe class imbalance through cost-sensitive class weighting rather than synthetic oversampling.
  • Quantified train/test overfitting analysis confirmed generalisation, outperforming the comparable published studies benchmarked against.
DOI10.5281/zenodo.15618190

05 — Skills

Technologies I work with

Grouped by what they're for, rather than listed as one long wall of logos.

AI / Machine Learning

  • PyTorch
  • TensorFlow / Keras
  • scikit-learn
  • CatBoost
  • XGBoost
  • LightGBM
  • ConvNeXt · EfficientNet · Swin
  • Embeddings & vector search
  • RAG (LangChain, FAISS)
  • OpenAI & Anthropic APIs
  • Feature engineering
  • Cost-sensitive learning

Cloud & DevOps

  • AWS (EC2, ECS, Lambda, SQS, S3)
  • AWS (EventBridge, CloudWatch, Parameter Store)
  • AWS (Amplify, Route 53)
  • Docker
  • GitHub Actions
  • Terraform
  • Vercel
  • Cloudflare R2
  • GCP

Backend

  • FastAPI
  • NestJS
  • Django REST Framework
  • Laravel
  • Node.js / Express
  • Next.js (Server Actions & API routes)

Frontend

  • Next.js
  • React
  • Angular
  • TypeScript
  • Tailwind CSS
  • Angular Material
  • Radix UI
  • Framer

Languages

  • Python
  • TypeScript
  • JavaScript
  • PHP
  • SQL

Databases

  • MongoDB
  • PostgreSQL
  • MySQL
  • Supabase
  • Firebase / Firestore
  • Redis

Integrations

  • Telegram Bot API & Mini Apps
  • Bakong KHQR / ABA PayWay
  • Auth0
  • Stripe
  • Google OAuth
  • EmailJS

Other

  • Web scraping & data extraction
  • Data analysis & visualisation
  • REST API design
  • RBAC & authentication systems
  • On-page SEO & technical metadata

06 — Background

Education & achievements

Education

  • Bachelor of Information Technology Engineering

    Graduated 22 May 2025

    Royal University of Phnom Penh

  • General English Program — Level 14

    1 Dec 2020

    Stanford American School

  • English Program — Level 12

    13 Jun 2019

    Arizon School

Achievements

22 Oct 2025

Top 20 — Pan-SEA AI Developer Challenge 2025

Placed among 100+ teams across ASEAN in AI Singapore's regional challenge for an AI platform addressing real-world problems. Awarded USD 10,000 in AWS credits to develop and scale the solution.

7 – 20 Aug 2024

International Seminar Delegate, China

Selected as 1 of 8 participants to attend an international seminar on Management and Protection of Nature Reserves for Belt & Road Initiative countries.

22 Dec 2023

Gold Medal — NAVA-Thon Hackathon

Awarded for a Telegram chatbot promoting positive parenting and child protection to combat violence against children.

  • NICC 9th Startup Camp (ICT)

    19 – 22 Jun 2023

    Completed the training course and achieved the required level of competence.

  • Samsung Innovation Campus Scholarship

    5 Apr 2022

    Selected among the top 60 students nationally for an ICT programme covering Python from basic to advanced, and data analysis.

  • Silver Medal — Angkor Mathematics Cambodia

    15 Jan 2022

    Awarded among 2,000+ participants.

  • Mathematics Outstanding Student Cambodia

    15 Oct 2021

    One of the top finalists in the national Mathematics Outstanding Student examination.

Volunteering

  • Registration & Protocol Team — 22nd ASJA–ASCOJA–JAC Symposium28 Jun 2024
  • Ceremony Volunteer — SEA Games & ASEAN Para Games5 May – 9 Jun 2023
  • Protocol Support — Earth Hour23 Mar 2023
  • Event Organising Assistant — Angkor Mathematics Cambodia19 Feb 2023
  • Event Organising Assistant — Math Kangaroo Cambodia11 Dec 2022

07 — Contact

Get in touch

Open to engineering roles and project work, particularly where machine learning meets a real product.

Based in Phnom Penh, Cambodia. References available on request.