I build production-grade fullstack systems — multi-tenant SaaS,
fintech-mobile, and ML-serving platforms. Backend-deep with strong
frontend and Flutter mobile chops.
Backend-leaning across web, mobile, and ML serving —
production-tested, not buzzword-tested.
Backend
LaravelExpert
Node.jsExpert
TypeScriptExpert
NestJSStrong
ExpressStrong
Python · FastAPIStrong
Go (microservices)Working
PHPExpert
Frontend
NuxtExpert
VueExpert
TypeScriptExpert
QuasarStrong
WebSocketsStrong
Mobile
FlutterExpert
React NativeWorking
ML Kit (Android)Strong
Vision Kit (iOS)Strong
Agora SDKWorking
Infra & ML
AWS · S3 / SQS / CognitoStrong
PostgreSQL · MySQLExpert
DockerStrong
ONNX · Keras servingWorking
OpenAI · Gemini · ClaudeStrong
Stripe · PayPal · ZohoStrong
DICOM · libpostalWorking
02
Selected work
Production systems shipped to real users. Click any card to expand
the case study.
FullstackBackend-heavySaaS
DirectMail2.0
Multi-tenant direct mail SaaS combining physical mail with
digital ad follow-up. Hundreds of whitelabel partners.
Full-Stack Developer (Backend-focused)·3 years · Ongoing
<1s
dashboard load (was 10s+)
v8→v12
Laravel upgrade led
100s
whitelabel partners
Overview
Production SaaS combining physical direct mail with
multi-channel digital follow-up — Google geotargeting,
social retargeting, YouTube ads, QR codes, call tracking.
Built as a whitelabel multi-tenant platform serving hundreds
of partners managing campaigns at scale: millions of ad
impressions and hundreds of thousands of mailed pieces
tracked.
Key contributions
Migrated file processing to S3 to enable horizontal
scaling — refactored local pipeline with
backward-compatible rollout, then removed legacy.
Extracted QR code generation into a Go microservice for
performance, communicating via internal commands.
Integrated Flowcode for branded QR generation and
analytics.
Optimized statistics dashboard performance — caching layer
keyed by URL + query parameters cut load from 10s+ to
under 1s on heavy filters.
Automated Zoho billing operations (updates, cancellations)
and USPS campaign management via direct API integration.
Led incremental Laravel upgrades v8 → v12 over three
years; separated API/web routes and introduced proper CORS
in the v12 migration.
Stack
LaravelNuxtGoAWS S3SQSZohoUSPS API
Partner overview dashboard
Campaign analytics — caching reduced load times from 10s+
to <1s
MobileFullstackFintechComputer Vision
Cash4Mail
Cross-platform mobile app for direct mail contributors.
On-device CV scanning + real-money PayPal payouts.
Full-Stack Developer (~75% of codebase)·2 years · Live in production
iOS + Android
Flutter · one codebase
On-device
CV inference for privacy + speed
KYC
Stripe Identity verification
Overview
Live consumer-facing mobile app letting contributors across
the U.S. scan and submit physical mail pieces in exchange
for cash. Captured mail feeds DirectMail2.0's WMW database —
the largest AI-powered direct mail intelligence database in
the U.S. with 300,000+ catalogued pieces. Handles real-money
payouts, government-grade identity verification, and
on-device computer vision.
Key contributions
On-device document scanning with ML Kit (Android) and
Vision Kit (iOS) — auto-detects mail piece edges, corrects
perspective, enhances captures locally for speed and
privacy.
Stripe Identity for KYC verification, layered with
libpostal address normalization to match verified ID
address against user-input registration address.
PayPal payout integration for contributor compensation;
resolved tricky permissions/credentials issue by tracing
PayPal docs.
Direct-to-S3 uploads via presigned URLs — backend mints
URL, mobile uploads directly, slashing backend transit.
AWS Cognito for shared authentication across mobile and
backend.
Built the 6-step contributor onboarding flow (Learn →
Profile → Test Mail → ID Verification → Method → Approved)
end-to-end.
Home dashboard with 6-step contributor onboarding stepper
Active scanning — on-device ML Kit / Vision Kit edge
detection
Capture review — perspective-corrected mail piece
submission
FullstackAI/LLMReal-time
DM20.ai
World's first multi-model AI platform for direct mail
optimization. Owned LLM integration, payments, real-time
gateway.
Full-Stack Developer (Integration & Real-time
Lead)·~1 year · Live in production
3
LLM providers orchestrated
80K+
campaigns in dataset
~2B
recipients in training
Overview
AI platform built specifically for direct mail
performance modeling and optimization — publicly launched
March 2026. Users upload mail piece creatives and receive
AI-powered analysis grounded in DirectMail2.0's dataset of
80,000+ campaigns delivered to nearly 2 billion recipients.
Combines proprietary direct mail intelligence with
multi-model LLM validation.
Key contributions
Custom Zoho Hosted Payment Page integration with branded
logo, custom webhook handling, and conditional
credit-card-on-file logic.
Zoho customer data sync — designed reconciliation logic
mapping platform users to Zoho customer IDs, preventing
duplicates.
Multi-LLM provider integration layer — owns the code
routing requests to OpenAI, Gemini, and Claude. Handles
failures, malformed responses, cross-provider behavior
diffs so the prompt-engineering team works against a
stable interface.
Face-verified employee attendance app for Universitas Dian
Nuswantoro. On-device face recognition + GPS geofencing.
Live on App Store and Play Store.
Mobile Developer (solo) · Flutter·Live in production
On-device
face inference — no images leave phone
iOS + Android
single Flutter codebase
100s
daily active university staff
Overview
Production attendance app for staff at Universitas Dian
Nuswantoro (Udinus), letting employees clock in from their
phones using face verification and on-campus location
enforcement. Live on both the App Store and Play Store, with
hundreds of university employees as active users. Replaces
traditional fingerprint/card-based attendance with a
phone-native flow: open the app, verify your face, confirm
you're on campus, done.
Key contributions
Built the entire mobile app in Flutter as the sole mobile
developer, integrating with a Laravel backend built by a
separate team. Single codebase shipping to both iOS and
Android.
On-device face verification pipeline: Google ML Kit
detection (real-time bounding box) → face crop → FaceNet
embedding via TensorFlow Lite → Euclidean-distance
similarity match against the registered embedding from the
backend.
Privacy by design — only the resulting embedding vector (a
plain numeric array) is transmitted to the server, never
raw face images. Bandwidth and privacy win in one move.
Embedding storage strategy — at hundreds-of-users scale,
embeddings are stored as float arrays alongside the
employee record in the regular database. No specialized
vector DB needed; simple, maintainable, good enough.
GPS-based geofencing — home screen compares device GPS to
the registered campus location in real time, surfacing "Di
Dalam Area" / "Di Luar Area" status. Attendance is only
valid on campus.
Polished attendance dashboard — profile, live server time,
geofence status, and scrollable history with clear
Indonesian status badges (Masuk Tepat Waktu / Pulang Tepat
Waktu / Izin / Sakit).
Cross-platform shipping — took the app through both App
Store and Play Store review, including camera/location
permission justifications and privacy policy requirements
specific to face-and-location apps.
Stack
FlutterTensorFlow LiteGoogle ML KitFaceNetLaravel (integrated)GPS / Geofencing
Face capture — live ML Kit bounding box during embedding
generation
Home dashboard — live server time, geofence status,
attendance history
Login — Udinus campus branding, NIP + password
FullstackML ServingMedical
Oncodoc AI
Medical AI platform for chest scan analysis. Live in alpha
at partner hospital.
Full-Stack Developer (Engineering Lead)·~1 year · Live in alpha
DICOM
+ JPG ingestion pipeline
ONNX + .h5
multi-format ML serving
GradCAM
explainable AI to clinicians
Overview
Medical AI platform helping clinicians analyze chest scans
for tuberculosis detection and anomaly identification.
Doctors upload chest imagery (DICOM or standard images); the
system returns TB classification, anomaly localization, and
a GradCAM heatmap overlay showing why the model made its
prediction. Part of the Oncodoc cancer-screening ecosystem
with Universitas Dian Nuswantoro.
Key contributions
DICOM ingestion pipeline — accepts DICOM alongside regular
images. Originals archived; converts to JPG for both
display and model consumption.
Image preprocessing for cross-device consistency —
different scanner manufacturers produce images with
different intensity ranges; built normalization layer
ensuring consistent predictions across imaging devices.
Python inference service with FastAPI — loads ONNX and
Keras .h5 models, exposes inference as REST, returns
predictions plus base64-encoded GradCAM heatmap.
Architectural decision: Laravel + Python split. Python
isolated for ML; Laravel kept for the main app to keep it
maintainable by a broader pool of developers (real
bus-factor consideration for a small team).
Frontend visualization with Nuxt — renders original scan,
predictions, and GradCAM overlay returned from the Python
service.
Stack
NuxtLaravelPythonFastAPIONNXKerasDICOM
Detection view — bounding boxes on detected anomalies
GradCAM heatmap — explainable AI overlay for clinicians
03
Experience
Seven years across product, agency, and remote-first teams.