Work

Engineer, organiser, perpetual tinkerer

I build backend and distributed systems in Go and Rust, lead the Next.js front-ends that sit on top of them, organise developer communities in Nairobi, and came up through mechatronics. The short version is below; the proof is in the projects.

Engineering

Abstract Machines (opens in a new tab)

Open-source contributor

Remote

  • Core contributor to SuperMQ / Magistrala, an open-source IoT messaging and device-management platform written in Go.
  • Work spans the messaging core, users and authentication, and protocol adapters (MQTT, CoAP, HTTP, gRPC).
  • Pioneered the Magistrala UI's move from server-rendered Go templates to a modern Next.js application (React, TypeScript, Tailwind), and continue to maintain it.

B2B Commerce Platform

Software Engineer, Backend

Nairobi · Remote

  • Lead contributor to a Go sales platform powering nationwide field-sales operations: GraphQL API, PostgreSQL, Kafka and RabbitMQ event streaming, Redis, and full observability with OpenTelemetry, Sentry, and Prometheus.
  • Build microservices across the e-commerce, fulfilment, and notification domains, including geospatial route planning and tracking for last-mile delivery.
  • Built a high-performance analytics engine in Rust that queries Trino and Pinot with intelligent result caching.
  • Ship multi-tenant, event-driven services deployed on Kubernetes, backing both internal tools and a customer-facing mobile app.
  • Support the platform's web front-ends (Next.js, React, TypeScript) alongside the backend services.

Community & leadership

  • Organise talks and meetups for one of Nairobi's largest Python communities.
  • Build a community around robotics and hardware hacking in Kenya.

Education

Jomo Kenyatta University of Agriculture and Technology

BSc, Mechatronic Engineering

Kenya

  • Five-year mechatronics programme spanning embedded systems, control, and robotics.
  • Grand Prize, JKUAT Tech Expo 10. First Runners-Up, JKUAT Robotics Dojo.

For awards and recognition, see awards. For talks and papers, see talks and publications.