I’ve been fortunate to dabble in backend development, machine learning, infrastructure, DevOps, programming languages, and systems through some of the projects below:

  • Penn Clubs: Penn Clubs is the official student club repository at Penn. I work as a developer lead on the product, which is managed as part of the umbrella student development club Penn Labs. Check us out! We build a lot of cool software for the Penn community.

  • Spruce: A friend and I wrote a parser and interpreter in Haskell for a custom language (called Spruce) with functional features (first class functions, lexically scoped closures) and low-level concurrency primitives (fork, wait) alongside a simple interface to support transactions over memory

  • Distributed ML Pipeline: For a DevOps final project, I built a distributed Machine Learning pipeline on Kubernetes that aims to be model-agnostic and supports MLOps practices (Continuous Training and Continuous Monitoring).

  • Minimax Group Fairness: For an Ethical Algorithm Design class (taught by Michael Kearns), my group extended a procedure in Kearns' paper on improving group fairness in ML prediction problems by minimising the maximum sample error across arbitrarily defined groups – intending to demonstrate a fairer approach. I ran the implementation and experimentation portion of the project.

  • CIS 1880: DevOps: I co-taught a (now discontinued) class on DevOps at Penn. Born out of an older NETS major’s distaste for Penn’s relatively outdated cloud computing class – NETS 212 – this class cultivated my budding interest in cloud infrastructure. Unikernels anyone?

  • RuneScape 2D: I used to play a lot of RuneScape when I was in high-school, so for a class final project I built a minimal 2D version of the game’s old tutorial, mostly for nostalgia.