About Me

I'm a former undergraduate at UC Berkeley with a degree in Computer Science and Pure Mathematics. During my time at Berkeley, I've focused on a wide variety of subjects including Machine Learning, Deep Reinforcement Learning, Operating Systems, Combinatorial Algorithms, Real and Functional Analysis, and Abstract Algebra. I usually spend my day playing piano, solving math problems, programming something new, or (as of recently) playing go. I'll be primarily using my website to post my notes on some of the classes I've taken or posting some random insight to my blog.

Work Experience

During the summer of 2020, I worked as a Software Engineer Intern at Rimeto which was acquired by Slack during my internship. As an intern, I worked on many tasks directly relevant to the product itself, essentially performing full time work. As part of my onboarding, I was expected to make bug fixes to the internal Rimeto Outlook plugin and implement a feature for a customer in a code base consisting of Node.js and React. My first project consisted of working on an ML system for extracting and clustering topics from a large dataset of wiki pages, slack conversations, and pull requests to identify the expertise of employees. I was able to create the mobile frontend view for this in React Native. I also helped develop an algorithm which would force certain keywords to cluster together, and created the internal tool to specify these hard-coded clusters. As my last project of my internship, I refractored all of the legacy APIs used in the internal systems to use a more updated GraphQL framework which has consistent input and responses and improved logging features. The task also consisted of adding unit tests to any untested APIs to maximize the test coverage. As a part of my internship, I also gained experience in shadowing an oncall and working as an oncall.

During the summer of 2019, I worked as a Software Development Intern at Amazon with the Treasure Truck team. My project was to create a web application for handling permissions to access an internal-use Android application. I wrote the frontend in Angular Typescript and backend with Spring Framework, while also working with a DynamoDB database which stored these permissions.

I also did research in Professor Jennifer Listgarten's lab which focuses on applying Machine Learning to Biology. The project that I worked on is a novel method to aggregate several datasets measured with possibly different calibrations and apply regression on all of these simultaneously while achieving better results than naively applying regression on the union of these datasets. The high level idea of our approach was to do so by computing the maximum likelihood model.


One of the first projects I've worked on was MIX. MIX is a hypothetical computer with a small memory space and simple assembly language that was designed by Donald Knuth in order to write his renown textbooks: The Art of Computer Programming. This was my first interaction with an assembly language, so I created an Assembler and Simulator for MIX. This was written completely in Java.