Research
Systems for training large models
Training a large model is now clearly a distributed systems problem. Under the latency and reliability demands of training, the network becomes the bottleneck for synchronisation across thousands of GPUs. As model-size requirements grow, Mixture-of-Experts (MoE) architectures, with sparse, dynamic expert traffic, have emerged as a cost-efficient way to scale.
As a postgraduate researcher at Imperial College London, supervised by Prof. Marios Kogias, my thesis explores network planning for MoE training, looking for opportunities to cut cost and latency at large scale.
A related problem is fault tolerance. Checkpointing is how thousand-GPU jobs survive frequent failures, but different strategies impose very different overheads. Measuring those overheads has almost always meant real hardware runs on prohibitively expensive clusters. CheckWork, our framework published at APNet 2026, enables simulation instead: it augments training DAGs with checkpoint operations to produce checkpoint-aware Chakra traces that existing system simulators can replay realistically. Both this work and my thesis are done with collaborators at NVIDIA Research.
Systems for agentic execution environments
Separately, through Clusy, I work on the systems underneath agent-driven executions, specifically for notebook interfaces. A notebook is not a script: cells run out of order, state outlives the code that created it, and the kernel (not the source) is the true execution substrate. It is quite important for our use case. The research question is how to make interactive computational environments efficient enough for agents to explore wide experimental spaces within reasonable cost. More on the dedicated Clusy page.
Infrastructure for teaching computer science
Before London, I spent my Berkeley years in Prof. Dan Garcia's CS Education R&D Group and ACE Lab. The recurring problem was mastery learning — students getting multiple chances to show understanding, on their own schedule — which ordinary university tooling does not support. GradeView is the group's answer: a cloud-native learning-analytics platform on GCP. As R&D lead I led a team of six designing and building its instructor dashboard (SIGCSE TS 2026) — real-time views of grades, completion, and score trends for course staff. It has run for three terms in CS10.
The other thread is assessment. Graph questions — run BFS on this graph, construct a counterexample to that claim — were stuck on paper because nothing could autograde them, which meant no randomization, no instant feedback, and a lot of manual grading. In ACE Lab I built two open-source PrairieLearn elements for this: An Interactive Tool for Randomized Autogradable Graph Assessments (SIGCSE TS 2025), which generates randomized interactive graph questions with automatic grading, and A Direct Manipulation User Interface for Constructing Autogradable Graphs (CompEd 2025), which lets students build graphs by direct manipulation and grades the result automatically. Both were done with Prof. Dan Garcia, Prof. Armando Fox, and Prof. Narges Norouzi.
Earlier work
As a research assistant at the University of Southern California, I worked on NLP with large language models, building classifiers that check writing against style guides, from classical baselines through BERT and OpenAI models, with parameter-efficient fine-tuning and synthetic data pipelines, ran on HPC clusters.
Before that, as an undergraduate research assistant at the Space Sciences Laboratory (2021–2022), I worked on NASA's Stardust Mission: training TensorFlow classifiers to find interstellar dust candidates in collector imagery, and building an EDS autograder for particle identification.