// AI Engineer

Daffa Izzuddin

I take models from a training run to something people can actually use — train, serve, monitor, iterate.

Status
Open to AI engineering roles — remote, full-time
Based in
Malang, Indonesia · UTC+7
Currently

Tech Lead · Rains

Founding Developer · Mayfeyr

  • Model development
  • Inference & serving
  • Monitoring & iteration
  • Shipping the product around it

I am an AI engineer who likes the unglamorous half of machine learning: getting a model out of the notebook, putting it behind a real endpoint, watching what it does to real users, and then going back to improve it.

Most of my work sits where ML meets web: image generation for batik patterns, computer vision on satellite imagery, face embeddings for authentication, and the Nuxt/Go/Postgres plumbing that makes those usable. I also write about the engineering side at invasikode.com, because explaining a system is a good test of whether I actually understand it.

What I actually do

  1. 01Data & Modeling
  2. 02Serving & Inference
  3. 03Monitoring & Iteration
  4. 04Product Delivery

Models are the easy part. These four stages are what I own end to end, and every claim above links to a project where I did it.

01

Experience

Toggle Experience
  1. Tech Lead

    RainsNow

    Present · Remote · Full-time

    typescriptvuenuxtgopostgresqldocker
  2. Founding Developer

    MayfeyrNow

    Present · Remote · Founding team

    typescriptnuxtpostgresql
  3. B.Sc. Computer Science

    Universitas Brawijaya

    Education · Malang, Indonesia

02

Projects

Toggle Projects
03

Skills

Toggle Skills
01

Data & Modeling

Framing the problem, cleaning the data, training and evaluating a model I can defend.

  • Dataset preparation and label sanity checks
  • Fine-tuning diffusion models (LoRA / SDXL) — GenBatik
  • CNN / embedding models for vision — SPARSE, IdentifEye
  • Evaluation beyond a single accuracy number — SPARSE
PyTorch Hugging Face Python NumPy
02

Serving & Inference

A model that only runs in a notebook is not a feature. I put it behind an endpoint and keep it honest.

  • REST / async job APIs around model inference — GenBatik, IdentifEye
  • Streaming progress to the client (WebSocket) — GenBatik
  • Containerised deploy, GPU vs CPU trade-offs — SPARSE
  • Latency and cost per request — GenBatik
FastAPI Go Docker Cloudflare
03

Monitoring & Iteration

The part most portfolios skip. I care about what happens after deploy: what broke, what drifted, and what the next version should change.

  • Logging inputs/outputs to make failures reproducible — GenBatik
  • Feedback capture (accepted vs rejected output) — TataKata
  • Cost and usage tracking per feature
  • Versioned experiments instead of one-off notebooks
Postgres Grafana GitHub Actions
04

Product Delivery

An AI feature is only as good as the interface around it. I build that part too.

  • Nuxt / Vue front ends for data-heavy products — GenBatik, invasikode.com
  • API design and schema work in Postgres
  • Static-first builds, prerender, and deploy pipelines — Portfolio (this site)
  • Technical writing that explains a system to non-authors — invasikode.com
Nuxt TypeScript Tailwind Postgres
04

Writing

Toggle Writing

// Contact

Hiring for an AI engineering role, or need a model turned into a product?

© 2026 Daffa IzzuddinBuilt with Nuxt · content lives in content/