I'm studying Computing Science at Simon Fraser University and building software around backend systems, cloud infrastructure, security, and applied AI.
I like the parts of engineering that become visible when something breaks. Lately, that has meant running assessment workloads on Kubernetes, managing AWS and GCP infrastructure, tracing production failures, and tightening deployment and security controls. I use Terraform, Ansible, Docker, and GitHub Actions to keep that work repeatable.
- ResQPlate is a food redistribution platform built with TypeScript, Express, React, and PostgreSQL. I also worked on its infrastructure and deployment tooling.
- AI Security Operations Platform processes security events, calculates risk scores, keeps audit logs, and leaves response decisions with a human analyst.
- Perturbation Flakiness Testing uses Python and Docker to expose flaky tests by changing the conditions under which they run.
- TCP Group Chat Fuzzer combines a multiclient chat server with fuzzing clients written in C. It uses POSIX sockets, threads, and a custom binary protocol.
- Multithreaded MapReduce is a MapReduce framework in C with parallel workers, synchronized aggregation, deterministic partitioning, and correctness tests.
Most of my recent application work is in TypeScript and Python, using Fastify, FastAPI, PostgreSQL, Drizzle ORM, React, and Zod. For systems work, I use C and C++.
On the infrastructure side, I work with AWS, GCP, Kubernetes, Terraform, Ansible, Docker, Cloudflare, Linux, and GitHub Actions. I also spend time on observability, incident response, and the less glamorous work of figuring out why a deployment failed.

