Lead Engineer. Production AI on low-latency distributed systems. FinTech and regulated environments.
Nine years of software engineering: distributed systems since 2017; generative AI (LLMs, RAG, agents) since 2023. Full stack across voice, vision, and RAG: LangGraph orchestration, MCP tool ecosystems, real-time speech and video pipelines, evaluation pipelines, and the React/Next.js consoles operators use daily, all on AWS.
480msVoice AI p95 · Certis · '26
<100msTrade processing · TP ICAP · '24
99.95%Platform uptime · RegASK · '25
1M+Regulatory docs · RegASK · '25
Open toStaff and lead AI engineering roles in Singapore.Currently focused onProduction LLM evals · multi-agent systems · FinTech and derivatives trading systems.
Leads the 5-engineer team behind the enterprise agentic AI platform; 8 enterprise deployments including a major transport hub; 35% of tier-1 support tickets deflected.
An operational orchestrator for security operations, acting on inputs from voice, vision, and humans in the loop. Manage the 5-engineer team: ran 60+ interviews to build it, and designed the 6-week onboarding curriculum that converts strong backend and data science hires into production-AI engineers. Own the platform's 99.9% SLO; built its call center agent end to end; now in beta handling inquiry and case-management calls ahead of production go-live. RFC/ADR process adopted by two sibling teams; represent the platform on two customer AI steering committees.
·Orchestration core and MCP connectors, built with the team. LangGraph agents with shared state, handoff contracts, and planning loops on Temporal, chosen over event choreography for replayable, compensable writes. First four MCP connectors (ITSM, video management, access control, workforce) delivered as a team, scaling to 14 access-scoped connectors behind one audited interface, with A2A interop. LiteLLM tiered routing: self-hosted vLLM (Qwen fast default, SEA-LION for reasoning-heavy turns) with Claude on Bedrock and OpenAI as managed fallback, for a cost ceiling, data residency, and graceful degradation; one CI/CD pipeline, MLflow lineage.
·Voice AI at concurrency. Duplex SIP/WebRTC through LiveKit with barge-in and Silero VAD, streaming ASR/TTS, and a per-stage latency budget across STT, retrieval, model, and TTS. p95 turn latency 480ms at 60 concurrent sessions; 45k calls/month in English, Mandarin, Malay, and Tamil; 82% containment without human handoff. Inference spend down 28% via continuous batching, KV/prefix caching, AWQ quantization, and Redis-backed semantic caching on the RAG hot path.
·Vision with VLM grounding. YOLO-family detectors (PyTorch) across 240 in-house camera streams on Kafka at 6 sites, TensorRT INT8 at the edge; Qwen3-VL and Gemma 4 26B-A4B-it grounding fires only on detector hits, amortizing VLM cost. Active learning and hard-negative mining cut false positives 63%; operator-confirmed precision 0.91. Vision events enter the agent loop as tools across lost-and-found, hazard recognition, vehicle and parking, and occupancy workflows.
·Operator console, end to end. React/Next.js with streaming output, write-confirmation UX, WebSocket state sync, WebRTC push-to-talk, Playwright e2e. 300+ of ~380 eligible weekly operators; handle time down 22%.
·Safety architecture and incident command. Sandboxed tool execution with egress controls, blast-radius limits, human confirmation, automated rollback on KPI degradation; quarterly red teaming; controls mapped to the IMDA framework ahead of customer audits. Zero unapproved writes; unsafe tool calls down 89%. Incident commander for the platform's only Sev-2; the postmortem set org-standard backoff budgets and a weekly ops review.
·Evaluation and tuning flywheel. Golden sets with ops SMEs, LLM-as-Judge on ~2k weekly episodes in Langfuse, benchmark in CI, per-language WER and latency budgets for voice, canary and interleaved online evals, DPO on operator accept/reject pairs, and a LoRA fine-tune on three months of operator-call recordings that surfaces the right SOP as a call unfolds. Task success 78% to 91%; failure taxonomy maintained on the residual 9%.
Architected and built end to end an LLM document-intelligence platform over a 1M+ document regulatory corpus for financial, trading, and pharmaceutical clients.
Trained a 2-engineer successor team; remained technical advisor through Jan 2026. The platform remains in production.
·Hybrid retrieval with reranking. BM25 + vector with Cohere embeddings in Milvus, Cohere cross-encoder reranking; recall@10 up 18 points over vector-only.
·Structured extraction and knowledge graph. Schema-validated obligation extraction (97% first-pass validity) feeding a regulatory graph used for grounding and cross-document reasoning.
·Analyst application in Next.js. Shaped in direct partnership with regulatory analysts: cited answers, source-span highlighting, feedback capture wired into evaluation. Built end to end, front end to serving.
·Eval-gated deploys. Golden sets, RAGAS, LLM-as-Judge at 89% human agreement, drift and decay monitoring in LangSmith; controls documented against MAS FEAT.
·Reliability and cost. Uptime 99.5% to 99.95%; error rates down ~20%; cloud spend down ~35% with zero SLA regression; Airflow ingestion with dbt.
Low-latency trade processing at the world's largest interdealer broker, plus the firm's first LLM proof of concept.
·Sub-100ms p95 trade processing. Event-driven Go microservices at ~35k derivatives trades/day with idempotent, replay-safe consumers; maintained the legacy Java/Spring Boot monolith.
·First LLM proof of concept. Detecting trading issues with regulatory and clearing-house impact: RAG over settlement runbooks and break histories, human-in-the-loop review, full audit trail (BDD via Cucumber, Jenkins CI).
·Zero-downtime AWS migration. 12+ services to Kafka/MSK, DynamoDB Streams, and Aurora; multi-venue feed normalisation into consistent event schemas.
·Pre-clearing ML and observability. Anomaly and consistency scoring with explainable flags and a reviewer loop; OpenTelemetry trace-ID correlation, SLI/SLO baselines, Datadog as the main monitoring tool.
Go · Java / Spring Boot · Kafka / MSK · DynamoDB Streams · Aurora PostgreSQL · AWS · OpenTelemetry
Merchant-facing React dashboards plus real-time booking services across APAC; SLAs held through 3x dinner peaks.
·React dashboards and real-time services. Merchant-facing front ends plus availability, booking, and waitlist microservices; WebSocket updates across APAC markets.
·Online experimentation. A/B and interleaving on search ranking and booking flows; two ranking changes shipped on measured lift.
React · Go · WebSocket · AWS
Earlier · 2017 to 2021
Omobio: USSD platform for Robi Bangladesh (~37M subscribers) on telco-scale Java and Python/Django; promoted from Associate. Sysco LABS: Enterprise Menu Platform for CAKE: JanusGraph/Gremlin modeling, Node.js, Go, and Spring Boot with a BFF layer, React. Wiley: learning-platform services and React front ends (reactive Java with Spring Boot WebFlux, Django, Aurora, DynamoDB).
What I build with
What the work runs on.
Everything below is in production today; the role cards above show it in context.
Agents & orchestration
Agent systems that write to live infrastructure, so every layer is audited, replayable, and reversible.
Open-weights LLMs self-hosted on vLLM, plus managed inference via Bedrock. Vision-language models paired with detectors; speech in and out in the same loop; fine-tuned with LoRA SFT and DPO.
SEA-LIONself-hosted on vLLM, reasoning-heavy turns
Qwenself-hosted on vLLM
Qwen3-VLvision-language reasoning over detector output
Gemma 4 26B-A4B-itMoE VLM, gated grounding on detector hits
YOLO-family (PyTorch)detection with active learning, TensorRT INT8 at the edge
Claude (Bedrock) / OpenAI GPTmanaged inference in the routing layer, GPT-3.5 onwards
GCP Vertex AIworking knowledge
MERaLiON ASRSingapore-tuned speech recognition
Whisper / Google / Cartesia / ElevenLabsspeech in and out of the voice loop
LiveKit / Silero VADduplex SIP/WebRTC transport with barge-in
LoRA SFT / DPOsupervised and preference fine-tuning
Evaluation & governance
Harnesses that catch regressions before production. Models versioned, lineage tracked, rollouts gated.
Golden sets / LLM-as-Judge~2k scored episodes weekly
Langfuse / LangSmith / RAGAS / DeepEvaltracing and eval tooling
Online evalscanary and interleaved, drift monitoring
Eval gatesbenchmark in CI, progressive rollout, rollback
Built end to end: Next.js and TypeScript front end, streaming SSE chat on a self-hosted model, LinkedIn OAuth gating, prompt-injection and PII guards, per-user rate limiting. It's a small version of the platforms above that anyone can try. Ask her about the work.
No chat SDK behind it; written by hand.
opens the chat · LinkedIn sign-in
Selected credentials.
The short list. The full set is on LinkedIn.
AWS Certified Solutions Architect, SAA-C03
Amazon Web Services
2024
Machine Learning Specialization and ML in Production
Stanford University
2024
Generative AI: Fundamentals to Advanced Techniques
National University of Singapore
2025
Model Context Protocol: Advanced Topics
Anthropic
2026
Education
BSc (Hons) Computer Science· University College Dublin, Ireland
2014 to 2018
Get in touch
Tell me what you're building.
A few sentences is enough. Send it below, or find me on LinkedIn.