Open to ML and research-engineer roles, and research collaborations

Ebenezer Tarubinga

AI/ML Engineer

I build production AI systems: retrieval, agents and computer vision for city infrastructure, edge to cloud. I publish on the research side of the same problem, and I build the platform underneath a nine-product fleet.

Four first-author papers · one Korean patent filed · MSc AI, Korea University · shipping since 2019

Ebenezer Tarubinga
Seoul, Korea

Building

8

Production systems

9

Products shipped

2019

Shipping since

Research

4

First-author papers

2

Peer-reviewed

1

Korean patent filed

01 — Building

Systems

Client work is described by what it does and what I built, not by whose data is in it, so those repositories stay private.

  1. 01

    Retrieval over utility operations data

    Production · RAG

    Hybrid retrieval and reranking over a water utility's operations data, reasoning across a knowledge graph so every answer carries its evidence. Scored on a held-out set.

    FastAPIKnowledge graphRAGClient work · private
  2. 02

    Operations agent for a water grid

    Production · Agents

    A tool-calling agent that reads the live grid strictly read-only, so it cannot act on infrastructure. Guardrails at every tool boundary, adversarial inputs in the eval harness.

    PythonLangGraphEval harnessClient work · private
  3. 03

    3D digital twin for road infrastructure

    Production · Digital twin

    Live motorway telemetry on a Three.js map over PostGIS, for an international smart-mobility programme. My part was hardening a prototype until it could pass certification.

    FastAPIThree.jsPostGISClient work · private
  4. 04

    Edge vision on street-level camera hardware

    Production · Edge AI

    On-device detection on municipal camera poles, MQTT and serial down to the hardware. Offline-first: it survives a cloud outage and recovers a device that stops reporting.

    PythonYOLOv5MQTTClient work · private
  5. 05

    Single sign-on and billing for a nine-product fleet

    Platform · Identity

    One OIDC provider answers two questions for every product: who is this request, and is this organisation's subscription active. Identity fails closed and the gate fails open, so a billing blip cannot lock out someone who paid.

    OIDCNext.jsPostgresPrivate · architecture on request
  6. 06

    Ten databases onto one box

    Platform · Data

    Moved a fleet off managed Postgres onto one instance behind pgbouncer, one role per product. What forced it was an ORM distinct with no limit: 54,000 rows every five minutes to compute eight booleans.

    PostgrespgbouncerDockerPrivate · architecture on request
  7. 07

    A model gateway that cannot bill

    Platform · LLM infra

    Two free tiers chained, so no product holds a paid model key. It fails over on 401, 402, 403, 404, 413, 429 and 5xx, and never on 400, because a 400 is our own bad request.

    TypeScriptCloudflareGroqPrivate · architecture on request
  8. 08

    Checkers instead of memory

    Platform · Reliability

    Certificates, search visibility, crawler policy and factual claims, each swept weekly by a script that exits non-zero only on new drift. None of it is visible to a build or a test.

    PythoncronDNS APIsPrivate · architecture on request
  9. 09

    Backdoor attacks on CLIP

    Applied AI · Adversarial ML

    Stealthy backdoor triggers via dual-embedding alignment in CLIP's joint visual and textual space, reproducing and extending BadCLIP.

    PyTorchCLIP
  10. 10

    Semantic-aware multi-label adversarial attacks

    Applied AI · Adversarial ML

    Targeted perturbations for multi-label classifiers that exploit semantic label co-occurrence instead of treating each label independently.

    PyTorchMulti-label
  11. 11

    Semi-supervised segmentation baselines

    Applied AI · Segmentation

    A systematic evaluation of weak-to-strong consistency (UniMatch) and self-training (ST++). The groundwork the four papers were built on.

    PyTorchUniMatchST++
  12. 12

    Monocular depth estimation

    Applied AI · 3D vision

    Depth and point-cloud generation for autonomous driving on KITTI, over an improved depth-to-pointcloud pipeline on Depth Anything V2.

    PyTorchKITTI
  13. 13

    Effective context length of LLMs

    Applied AI · LLMs

    Why a declared context length overstates the effective one: positional-encoding bias and the STRING shift, measured across Llama, Mistral and Qwen.

    PyTorchTransformers
  14. 14

    AgriLet, crop disease detection

    Full-stack

    Disease identification with severity scoring for smallholder farmers, plus learning modules, community data contributions and downloadable datasets.

    ReactTypeScriptPrisma
  15. 15

    eLearn, an e-learning platform

    Full-stack

    O Level and A Level revision for African high-school students: 20+ subjects, 70+ lessons, study streaks and a learning-analytics dashboard.

    ReactExpressPrisma

02 — Research

Papers

Four mechanisms for one problem: learning to label every pixel from a handful of examples, without letting the model's own mistakes compound. Two are peer-reviewed.

orcid.org/0009-0004-7340-1873
Research topics
Semi-supervised learningSemantic segmentation Pseudo-labeling & consistencyCalibration & uncertainty Contrastive representation learningLong-tailed / class imbalance Boundary-aware learningFoundation models (DINOv2, ViT) Selective predictionEvaluation methodology
  1. 01

    Under review · IEEE TPAMI 2nd among DINOv2 methods

    CW-BASS v2: Saturation-Aware Pseudo-Label Selection for Semi-Supervised Segmentation under Foundation-Model Teachers

    Ebenezer Tarubinga · independent

    A foundation-model teacher's confidence saturates, so a one-pass gate asks whether its confident set deserves the confidence it demands.

    Picks correctly on all six DINOv2 teachers, blind · +1.5 mIoU on ADE20K

    CW-BASS v2 qualitative segmentation results
  2. 02

    Under review · WACV 2027 #2 · Global SSSS SOTA

    PixCon: Clean-Positive Contrastive Learning for Foundation-Model Semi-Supervised Segmentation

    Ebenezer Tarubinga · independent

    A pixel memory that admits only labeled pixels, keeping contrastive positives free of pseudo-label noise, with nothing added at inference.

    Beats a compute-matched UniMatch V2 on every Pascal-1/8 seed · 87.90 mIoU, three-seed mean

    PixCon qualitative segmentation results
  3. 03

    Neural Networks 2026 · Q1 · Top 10% IF Former #2 · Global SSSS SOTA

    FARCLUSS: Fuzzy Adaptive Rebalancing & Contrastive Uncertainty Learning for Semi-Supervised Segmentation

    Ebenezer Tarubinga, Jenifer Kalafatovich, Seong-Whan Lee

    Fuzzy top-K pseudo-labels with entropy-normalized uncertainty weighting: the pixels the model is least sure about are down-weighted, not discarded.

    #2 on the Papers with Code SSSS leaderboards at release · 78.8 / 78.2 mIoU, Cityscapes and Pascal VOC, ResNet-101

    FARCLUSS qualitative segmentation results
  4. 04

    IEEE IJCNN 2025 · CORE A Former #3 · Global SSSS SOTA

    CW-BASS: Confidence-Weighted Boundary-Aware Learning for Semi-Supervised Semantic Segmentation

    Ebenezer Tarubinga, Jenifer Kalafatovich, Seong-Whan Lee

    Confidence-weighted cross-entropy with Sobel boundary regularization, against two failures that compound: boundary blur and confirmation bias.

    #3 at release · 77.15 mIoU on Pascal VOC 2012, ResNet-50 · 65.9 on Cityscapes from 100 labeled images

    CW-BASS qualitative segmentation results

03 — Released

Open source

Tools I needed and published, plus the training code behind every paper.

04 — Path

Experience

AI/ML Engineer

Now

Gractor · Smart-city AI

Sept 2025 — present · Seoul, Korea

Retrieval, agents and computer vision for smart-city platforms, edge to cloud. I build the systems, the guardrails around them, and the evaluation harnesses that keep them honest once real operators depend on them.

Research Engineer (MSc)

Korea University · Pattern Recognition & ML Lab

Aug 2023 — Feb 2026 · Seoul, Korea

Semi-supervised segmentation under Prof. Seong-Whan Lee (IEEE Fellow): four first-author papers, ~10K lines of multi-GPU PyTorch training infrastructure, one Korean patent filing.

AI Software Engineer

GliT · EdTech

Jan 2019 — Jan 2021 · Hybrid

Offline-first mobile learning reaching 500+ students and 80,000+ sessions, ten-plus full-cycle product builds, STEM programmes with partner schools.

MSc, Artificial Intelligence

Korea University · 2023 – 2026

Computer vision, advised by Prof. Seong-Whan Lee (IEEE Fellow).

Global Korea Scholarship — sole Zimbabwean awardee BK21 Research Fellowship

Patent

Republic of Korea · application filed

Real-time object detection method, recording medium and device performing the same. Filed out of the autonomous-driving perception work.

GINCON Global Committee 2025 · Korean National Assembly

05 — Toolkit

Skills

Every row opens to the full list.

AI / LLM
RAG (hybrid retrieval)Agents & tool-callingModel Context ProtocolEvaluation harnessesGuardrailsLangGraphOpenAIAnthropic ClaudeHyperCLOVA XHugging Face
ML / CV
PyTorchTensorFlowOpenCVscikit-learnNumPyPandasSciPyYOLOv5OpenVINOONNXCUDAWeights & Biases
Backend & data
FastAPIFlaskNode.jsExpressSQLAlchemyPrismaKnowledge graphsPostgreSQL + PostGISMongoDBRedisOpenSearchSQLite
Frontend
React 19TypeScriptNext.jsThree.jsdeck.glMapLibreEChartsTailwindRadix UIFramer MotionZustandVite
Infra & IoT
DockerKubernetesAWSNginxsystemdPrometheusGrafanaMosquitto MQTTModBus RTUVercelCloudflareGitHub Actions
Languages
PythonTypeScriptJavaScriptC++C#JavaSQLBash

06 — Credentials

Certifications

All eight, with titles
  • IBMApplied AI Professional Certificate
  • Northwestern UniversityModern Robotics Specialization
  • Amazon Web ServicesSemantic Segmentation with SageMaker
  • MicrosoftML Pipelines with Azure ML Studio
  • GoogleFoundations of Project Management
  • Amazon Web ServicesAWS S3 Basics
  • Emory UniversityNeuroscience
  • MITGame Development with Scratch

Let's build something that ships.

Open to ML and research-engineer roles, and to research collaborations.