Writing

Blog

Reflections on work, projects, and the things I find worth thinking about.

Work

2023 - Present

Building Software for Lab Robots

On writing instrument drivers, backend glue, and what it means to build software for the physical world.

Automata · London

2022 - 2023

The Gap Between a Working Model and a Reliable Service

What I learned serving PyTorch models in production and why the engineering around the model matters as much as the model itself.

Sprout AI · London

2017 - 2020

Three Years on Search at Cafe Bazaar

From writing Elasticsearch queries to leading a microservices migration — what I built and what I learned along the way.

Cafe Bazaar · Tehran

2015 - 2016

Building a 3D Reconstruction Engine from Scratch

How we built a photogrammetry pipeline and a custom WebGL shader engine for in-browser 3D rendering, and what happened next.

To3D.net → To3D.ca

University Years

A Startup Built on Borrowed Time

Building a distributed computing grid on top of idle university machines — and learning what "economically viable" actually means.

QGrid · Qazvin

2011 - 2016

Five Years in a Robotics Lab

How a university lab shaped the way I think about engineering — and why constraints are often the most useful thing you can have.

NAO Biped Lab (MRL) · Qazvin

Projects & Research

2020 · M.Sc. Thesis

Gesture Recognition with Spiking Neural Networks

My master's research on biologically-inspired neural networks with event-based cameras — and what I found out about math along the way.

Shahid Beheshti University · arXiv:1911.03630

2019 · ETH Zürich

Building a Rescue Robot in a Week

What happens when you put a group of engineers in a room for a week and tell them to build something autonomous. We won.

ETH Zürich Robotic Summer School · 1st Prize

2019 · Hackathon

A Self-Driving Car in a Weekend

Training a ResNet to steer an RC car during a hackathon — a weekend project that turned out to be more instructive than expected.

Cafe Bazaar Hackathon

2018 · Cafe Bazaar

Breaking the Monolith at CafeBazaar

How we split a Django monolith into microservices, redesigned the caching layer, and shipped it without taking the system down.

Cafe Bazaar · Tehran

2017 · B.Sc. Thesis

Fast Soccer Ball Detection with Deep Learning

Replacing a fragile color-threshold approach with CNNs — making object detection on NAO robots robust to lighting variation.

Qazvin Azad University

2016 · MRL

Camera and Gyro Displacement Calibration

A Gauss-Newton calibration tool that corrected sensor displacements on NAO robots, improving world model and self-localization accuracy.

NAO Biped Lab (MRL) · Qazvin

Hobby

Building a Wallet on Polymesh

Exploring a permissioned blockchain designed for regulated securities — and what makes it different from general-purpose chains.

Hobby Project