Coursework
At Yale, I completed the joint major in Computer Science and Economics, a major in Mathematics, and a Certificate in Data Science.
My favorite Computer Science courses included Algorithms, Systems Programming & Computer Organization and Advanced Computational Intelligence for Games.
I took quite a few interesting classes in Mathematics, such as Real Analysis, Abstract Algebra and Extremal Combinatorics.
In Economics, I enjoyed American Economic History, Mathematical Game Theory and Applied Econometrics in Politics and Sports.
I also completed many courses of Statistics, such as Stochastic Processes, Advanced Probability and Machine Learning.
Notable Projects
For my Senior Project, I trained a Neural Network in Tensorflow to help play the card game Hearts. I also analyzed the performance of Information Set Monte Carlo Tree Search in the game of Hearts.
In Systems Programming & Computer Organization, I implemented malloc using brk, sbrk system calls on basic operating system, allocating physical memory to virtual memory. In addition, I also implemented a basic bash shell using syscalls.
I'm also particularly proud of my work in Applied Econometrics, where I looked at the impact of the 2020 Hong Kong National Security Law on politically connected firms.
Undergraduate Learning Assistant (ULA) work
I was also invited to work as an ULA for two classes I’ve taken at Yale. As a ULA, I organized office hours, graded exams or problem sets and taught a weekly discussion group section to a class of 20 students.
Introductory Machine Learning (Prof. John Lafferty)
The course covered Linear regression and classification, tree-based methods, clustering, topic models, word embeddings, recurrent neural networks, dictionary learning and deep learning.
Algorithms (Prof. Andre Wibisono)
The course covered Paradigms for algorithmic problem solving: greedy algorithms, divide and conquer, dynamic programming, and network flow. NP completeness and approximation algorithms for NP-complete problems.