Alim Pradana

Computer vision engineer

I build object detection systems for factories and warehouses. My systems count parts on production lines and record attendance by face. One of them flags phone use on CCTV across several company branches.

I write the backend and the apps around each model too.

Open to new roles, Indonesia

Parts trayReady
Count
Total 0
An illustration of what my counting systems do. Press run to detect the parts, then pick a class to highlight it.

Selected work

Five systems I built for workplaces. Open one for the details.

  • Operators point an Android phone at a shelf. A YOLO model counts the items in each area and pins their positions in 3D, so the next photo won't count them twice. Supervisors see the results on a web dashboard.

    What it does

    • Scan a shelf's QR code or barcode to set the location
    • Real-time detection on the phone's GPU, about 35 ms per frame on a Pixel 6
    • Operators can correct a count before they submit it
    • Works offline and syncs when the phone reconnects
    • Firestore rules separate operator and supervisor access
    • CSV export and Google sign-in
    • Unit and instrumented tests for the app

    Built with

    Kotlin, Jetpack Compose, ARCore, LiteRT (TensorFlow Lite), Room, Next.js, TypeScript, Firebase Auth, Cloud Firestore, Vercel

  • An internal REST API that counts bolts, nuts, gears, bearings, flanges, and long or short steel bars from a photo. I started it on YOLOv5, revised it twice, and later moved it to RF-DETR, a transformer-based detector that runs on ONNX Runtime. A Jetson Nano build with TensorRT FP16 ran at the edge from 2023 to 2025.

    What it does

    • Detection endpoints for a single image or a batch
    • An endpoint that saves hand-corrected counts
    • A training pipeline for custom datasets, with Roboflow for labeling
    • Comet ML experiment tracking and hyperparameter tuning for each revision
    • Stored results, so I can compare model versions over time

    Built with

    Python, FastAPI, Flask, YOLOv5, RF-DETR, ONNX Runtime, TensorRT, Roboflow, Comet ML, PostgreSQL, MySQL

  • A FastAPI service that runs on an edge device at the attendance kiosk. It registers workers' faces, matches each new photo with InsightFace, and checks the photo for spoofing. In a test on 5,432 past attendance photos it matched 99.2% of them to the right worker, averaging 879 ms per request with 30 requests arriving at once.

    What it does

    • Register several photos per worker and replace one at a time
    • Match against all workers, or verify one worker ID
    • Anti-spoofing with an ONNX model, with a heuristic fallback when no model is loaded
    • An in-memory embedding index, so a match skips the full database scan
    • API tokens with per-minute, per-hour and per-day limits
    • A request queue that waits for free GPU memory, plus an admin endpoint that unloads the model
    • Runs as a systemd service on Linux

    Built with

    Python, FastAPI, InsightFace, ONNX Runtime, CUDA, PostgreSQL, systemd

  • The system watches CCTV streams in real time and logs each time an employee uses a phone during work hours. It emails the alert list and exports reports as PDF. The company runs it in several branches.

    What it does

    • Start, stop and check a detection job for each camera and branch
    • Violation logs grouped by location
    • PDF report export
    • Choose who receives alerts
    • In-app and email notifications

    Built with

    Python, Object detection, RTSP, PDF reports, SMTP

  • Each location in the warehouse has a printed ArUco marker. The app stores item positions relative to the marker, so two different phones show an item in the same spot. I chose markers over pure detection here because this project needed precise locations.

    What it does

    • Scan a marker to identify the location
    • See item positions in AR, anchored to the marker
    • Admins manage locations and markers, users view and search items
    • Audit log of data changes
    • JWT sign-in with role-based access
    • Database migrations with Alembic

    Built with

    Kotlin, Jetpack Compose, ARCore, CameraX, OpenCV ArUco, Retrofit, Room, FastAPI, PostgreSQL, SQLAlchemy, Alembic, JWT

Other projects

Experiments and tools from my 90 or so repositories.

  • NUTRIA nutrition bot

    Send a photo of a meal on WhatsApp and the bot estimates its nutrition with a vision model through OpenRouter. Users confirm or correct the result by replying. A React dashboard shows daily totals and charts, and admins use it to set quotas, schedule maintenance and track API cost.

    FastAPI, Baileys, Cloud Firestore, React, Firebase Auth, Docker

  • AR parts detector

    An Android app that detects eight kinds of mechanical parts in the live camera view, from bearings to springs, and draws labeled boxes over them. I trained the YOLOv8 model and exported it to a Float16 TFLite file so it runs on the phone.

    Kotlin, CameraX, TensorFlow Lite, YOLOv8

  • Shipping label OCR

    Reads the buyer name, order number and address from a shipping label PDF or photo, then packs them into a QR code. One version handles Shopee labels.

    Python, OCR, Docker

  • AI meeting notes

    Upload a meeting recording and get structured minutes. Google Speech-to-Text writes the transcript, Vertex AI Gemini drafts the minutes, and each point links to its timestamp in the audio.

    FastAPI, React, TypeScript, Tailwind CSS, Vertex AI Gemini

  • Transcript and interview analyzer

    Upload audio or video to get a transcript through the OpenAI API. A second endpoint analyzes an interview from a recording, a PDF or pasted text.

    FastAPI, OpenAI API, MoviePy, PyMuPDF

  • Face recognition prototype

    A small FastAPI and InsightFace API that registers, matches, updates and deletes faces, with the data kept in a JSON file. I built it before the edge service in selected work.

    FastAPI, InsightFace

  • Depth estimation

    Three rounds of experiments with depth estimation from a single image, for measuring distance and 3D position.

    Python

  • Edge camera tools

    Capture and streaming utilities for Raspberry Pi cameras, plus an RTSP streamer and a distance estimator.

    Python, Raspberry Pi, RTSP

  • ERP-style report service

    A FastAPI and PostgreSQL service modeled on Oracle concurrent programs. You submit a report with its parameters, a background worker runs the query, and the service fills an Excel template with the results.

    FastAPI, PostgreSQL, Excel templates

  • PlayStation rental site

    A Laravel site that lists consoles, games and rental packages. Admins edit the catalog, pages and site settings, and read messages from the contact form.

    PHP, Laravel, Blade

  • Little Day Lab photobooth

    A Flask photobooth for iPad. It turns webcam shots into a collage, uploads it to Google Drive, and keeps a local copy when the connection drops. Comes with an admin dashboard, in two versions.

    Flask, Google Drive API, Firebase

  • Mobile banking MVP

    A FastAPI demo of sign-in, transfers with fees, and balance top-ups. I based it on my experience integrating BCA Virtual Account payments.

    FastAPI

  • Money management

    A React and Vite app for tracking personal spending.

    React, Vite

  • LimAdventure

    A 2D pixel action RPG for Android and desktop, built on LibGDX with the Ashley entity component system. The world spreads five biomes over a 120 by 120 tile map, with a day and night cycle, boss arenas and a spell hotbar.

    Kotlin, LibGDX, Ashley ECS

  • Metabase helper

    A Chrome extension I wrote to speed up daily work in Metabase dashboards.

    Chrome extension, JavaScript

  • Bots and small tools

    A Discord bot, a tweet bot, an NFC app, and small QR and notification tools.

    Discord API, NFC

About

I work in computer vision. My projects start with a camera pointed at something in a factory or warehouse, like parts on a conveyor or a worker at an attendance machine.

I train and deploy the models myself, from YOLOv5 to RF-DETR, on Android phones, Jetson Nano boards and servers. Then I build the API and the screens that make each model useful to the people on site.

I plan the hardware and the schedule too. My architecture docs let another team run a system after I hand it over.

Outside vision work I build Laravel sites and WhatsApp bots, and I wrote a 2D pixel RPG in Kotlin for fun.

Skills

Computer vision
YOLOv5, YOLOv8 and YOLO11, RF-DETR, InsightFace, OpenCV, LiteRT (TensorFlow Lite), TensorRT, ONNX Runtime, Roboflow, Comet ML
Backend
Python, FastAPI, Flask, PHP, Laravel, PostgreSQL, MySQL, SQLAlchemy, Alembic, Paramiko
Mobile and AR
Kotlin, Jetpack Compose, ARCore, CameraX, Room, Retrofit, LibGDX
Frontend
Next.js, TypeScript, React, Vite, Tailwind CSS, Bootstrap
Cloud and hardware
Firebase, Cloud Firestore, Vercel, Docker, Google Speech-to-Text, Vertex AI Gemini, OpenAI API, OpenRouter, Jetson Nano, Raspberry Pi
Tools
Git, systemd, Chrome extensions, Discord bots, WhatsApp bots with Baileys

Contact

I'm looking for computer vision and backend roles. Email reaches me fastest.