xodhiambo.com · nairobi · UTC+3 writing.log v.2026.07
xavier@nairobi:~$ whoami

Xavier Odhiambo

Senior Backend & Platform Engineer — Python · AWS · Ansible · AI/LLM

I build and operate backend systems for SaaS and civic-tech platforms — APIs, distributed pipelines, AI/LLM infrastructure, and the observability that keeps them running when nobody's watching.

xavier@nairobi:~$ cat about.md

# Most recently a Senior Software Engineer at Search Atlas, an agentic SEO platform — backend services integrating Google Search Console, Analytics, Ads, and Meta Ads. Previously three years at Code for Africa building civic-tech data platforms used by researchers and journalists across the continent.

# Recent work centers on applied AI systems: gated RAG pipelines, LLM routing with automatic failover, and self-hosted model platforms where data sovereignty matters. AWS Solutions Architect certified. Open-source contributor to Django and CKAN.

xavier@nairobi:~$ systemctl list-units --type=work --sort=impact

Ad-Domain Trust Classification System

FLAGSHIP trust-classifier.service

Led development of an internal ad-quality classifier built as a gated multi-stage RAG pipeline — cheap signals evaluated first, so expensive model calls run only when they change the outcome.

stack: LlamaIndex · pgvector · Python · PostgreSQL

LLM Orchestration Layer

FLAGSHIP llm-router.service

Routing layer across leading LLM providers with automatic failover and cost-aware model selection — one interface for product teams, resilience and spend control underneath.

stack: Python · FastAPI · Redis

Elasticsearch Cluster Operations

es-cluster.service

Designed and deployed an 8-node Elasticsearch cluster — 3 master-eligible, 5 data nodes — with custom Ansible roles for re-indexing, ILM, and snapshot lifecycle management. Benchmarked with Elastic Rally.

stack: Ansible · Elasticsearch · Kibana · Elastic Rally

Self-hosted LLM Platform

llm-platform.service

Led the deployment of a self-hosted LLM platform to complement commercial providers — a private option where data sovereignty and predictable inference costs mattered most.

stack: Ollama · OpenWebUI

Mediacloud Story-Indexer

story-indexer.service

Contributed to a distributed news ingestion pipeline operated by Mediacloud, a nonprofit research collaboration — an open archive used by researchers studying media ecosystems globally.

stack: Python · FastAPI · RabbitMQ · Elasticsearch · Docker

Sensors.Africa

sensors-api.service

Backend services for an IoT air-quality network across multiple African cities — geo-tagged ingestion and async aggregation tolerant of intermittent connectivity.

stack: Django · DRF · GeoDjango · Celery · PostgreSQL

Wazimap-NG

wazimap.service

Census and survey visualization platform with nested administrative geographies, tuned for spatial queries serving interactive maps across multiple African countries.

stack: Django · GeoDjango · PostgreSQL

MT5 Algorithmic Trading System

PERSONAL mt5-bot.service

Modular Python bot on MetaTrader 5 with a shared-code backtester, Telegram notifications, and multi-config isolation via magic numbers.

stack: Python · MetaTrader 5 · Tailscale
xavier@nairobi:~$ tail -f writing.log
[PLANNED]A remote MT5 development workflow with Tailscale
[PLANNED]Designing a gated multi-stage RAG pipeline
[PLANNED]Migrating the Mediacloud crawler
[PLANNED]Deploying a self-hosted LLM platform

all posts →

xavier@nairobi:~$ git log --oneline open-source/
[MERGED]django/django — bug fixes and documentation contributions
[MERGED]ckan/ckan — extensions and plugins for open dataset publishing
xavier@nairobi:~$