Count the object, not the frame.

Field video shows one object in many frames and again when the camera passes back, so counting detections over-counts. The task was to count each object once, with an evaluation the team could trust.

The code and data stay private; a synthetic pond shows the same steps.

Aug 2026 to nowResearchNow

AI Researcher (Contract)

Louis Dreyfus Company

  • Traced over-counting to duplicate tracks, not detector error, which cancelled a planned retrain.
  • Cut over-counting at the hardest site by about three quarters with a gated merge across camera passes.
  • Thesis (CountOnce): testing whether a video count can give a range that is right as often as it claims.
  • Hand-audited 37 detections, tested 8 ways to merge duplicate tracks across camera passes, and gave every count a ±2 range.
Mar to Aug 2026Internship

Applied AI Engineer Intern · Computer Vision

Louis Dreyfus Company

  • Built a YOLO and BoT-SORT pipeline that counts each object once in field video, deployed on Azure.
  • Led annotation across 7 datasets (10,000+ images) and re-split validation by camera and site to stop leakage.
  1. 01VideoField footage, many frames per object
  2. 02Detect3-class detector
  3. 03TrackBoT-SORT, merge across passes
  4. 04Count±2 range per count
From field footage to a count a reviewer can check.

Publish the question, not just the polish.

Aug 2026 to nowInternshipNow

AI Intern · RAG & Agentic Systems

People's Association

  • Developing retrieval and agentic AI systems for community-facing public-service workflows.
  • Applying orchestration, evaluation, and trace auditing to production use cases.

My open repositories expose how I think: account for wasted tokens, challenge guardrails, inspect retrieval, and measure behavior before making a larger claim. Each has a case file with its evidence, and the smaller builds and experiments are on the Work page.

TraceRazorAgent trace auditor · case fileAssayAdversarial guardrail probes · case fileAgenticPDFInspectable local retrieval · case file

Put trust into the handover.

Churp moved beyond a hackathon demo.

Sep 2025 to Aug 2026Civic product

Product Lead · Citizen Developer

People's Association

  • Led nine volunteers taking Churp from a hackathon concept to a $20K Sparks-funded pilot in Tengah.
  • Delivered Singpass OIDC, Myinfo, an equal-chance ballot, VAPT, and PA ICT handover.
Live
churp.sg, Singpass login
Onboarded
60+ residents, 300 plots
Zulfaqar Hafez and the Churp citizens developer team receiving 20,000 dollars in Sparks funding
Public LinkedIn photo · My role: Product Lead

Where I trained.

BSc (Hons) Applied Artificial Intelligence

Sep 2024 to 2027

Singapore Institute of Technology

Final-year LDC thesis · SMU Hack for Cities 2026 and SIT HackRift 2025 finalist

Diploma in Business Information Systems

Apr 2019 to May 2022

Republic Polytechnic

Internship at Infineon Technologies, Mar to Aug 2021 · Top 20, Google Cloud Hackathon Singapore 2022 · business information systems, web development, and analytics

Beyond the code

Volunteer leadership

Special Olympics sports volunteer, SIT Magical Hearts member since 2024 and president through 2025, reaching more than 500 beneficiaries across outreach programmes.

Credentials

Courses and credentials.

Credential details on LinkedIn ↗
Microsoft2026

AI-300

Operationalizing machine learning and generative AI solutions.

NVIDIA Deep Learning Institute2025

Fundamentals of Deep Learning

Neural-network training and deployment fundamentals.

NVIDIA Deep Learning Institute2025

Generative AI with Diffusion Models

Diffusion-model training, sampling, and generation.

NVIDIA Deep Learning Institute2025

Exploring Adversarial Machine Learning

Adversarial threats, attacks, and model robustness.

Résumés Case files Contact