Eric Zhang


I am a student at Harvard University studying mathematics and computer science, as well as a competitive programmer and musician.

Recently, I wrote a photorealistic renderer, a compiled Datalog engine in Rust used by security researchers and programming language designers, and a real-time semantic segmentation library for autonomous vehicles. Currently, I'm maintaining Set with Friends and building a modern math typesetting system.

I love thinking about graphics, machine learning, programming languages, and systems. I was previously a teaching fellow for CS 124 (Data Structures and Algorithms), taught by Michael Mitzenmacher, and CS 182 (Artificial Intelligence), taught by Milind Tambe and Boaz Barak. This semester, I am a teaching fellow for CS 161 (Operating Systems), taught by James Mickens. Aside from teaching, I am involved on campus with chamber music and theatre productions. I was also principal viola of the Harvard-Radcliffe Orchestra.

I wrote a physics book for high school students with Branislav Kisačanin, which was recently published by AIP. The free PDF version is available online here.

Eric Zhang

Competitive Programming

In high school, I won two gold medals representing the US at the International Olympiad in Informatics (IOI), placing 7th globally. I also ranked highly in the national math and physics olympiads, and I compete on Harvard's ICPC team.

I have written and tested problems for major national and international programming competitions, including the following:

In addition, I maintain an advanced algorithm and data structure library available here. If you are looking for tutoring, I've previously taught recorded courses with Alphastar Academy for motivated students aiming to perform at a high level in programming competitions.


Current (Spring 2021)
  • CS 221: Computational Complexity
  • Math 132: Differential Topology
  • MIT 6.824: Distributed Systems Engineering
  • MIT 6.838: Shape Analysis
Past (2019–2020)
  • Math 55a: Studies in Algebra and Group Theory (notes)
  • Math 55b: Studies in Real and Complex Analysis (notes)
  • Math 118r: Dynamical Systems (project)
  • Stat 210: Graduate Probability I (notes)
  • CS 153: Compilers
  • CS 161: Operating Systems
  • CS 223: Random Processes and Algorithms (project)
  • CS 228: Computational Learning Theory (notes, project)
  • CS 252r: PL/AI Graduate Seminar (notes, project)
  • CS 263: Systems Security (project)
  • MIT 6.837: Computer Graphics (project)
  • Music 189r: Chamber Music Performance