I commonly tutor undergraduates and high school students in Computer Science and Mathematics. I have some availability during the Berkeley academic school year to take on new students. My teaching philosophy is to tailor my lessons to each student. Think of it as music lessons, but for STEM.

If you are interested in hiring me, please send me an email titled “Tutoring:” followed by your name.


My undergraduate degree at Yale was in Computer Science and Mathematics. I graduated with distinction in computer science and received the 2016 Computer Science Prize from the faculty in recognition of my research accomplishments. I have tutored multiple courses at Yale and at Berkeley including: Data Structures and Programming Techniques (CPSC 223), Systems Programming and Computer Organization (CPSC 323), Computer Music: Sound Representation and Synthesis (CPSC 432), Software Engineering (CS 169), and Programming Languages and Compilers (CS 164).

I have worked as a software engineer for Microsoft and Facebook, and have over 15 years of programming experience.

Services and pricing

I offer the following main services:

  1. Tutoring in standard university or high school Computer Science or Mathematics coursework.
  2. Interview prep including mock interviews with novel sample problems.
  3. One-off code reviews for projects up to 20k lines of code in size.

Please inquire about any special requests. I try my hardest to pass on my knowledge to other students.

General pricing: $125/hr for in-person lessons. If you are located outside Berkeley, Oakland, Emeryville, or Albany, I offer these services via Skype at $85/hr.

Student pricing: If you are a university student paying for yourself, I offer reduced and group rates according to the following table:

FormatFirst studentAdditional students (up to 7)
In-person$50/hr+$10/hr each
Skype$40/hr+$10/hr each

Therefore, an in-person group of four students would split the cost of $80/hr: that’s $20/hr each. Bring a friend!

Note for UC Berkeley students: I am able to tutor CS courses numbered 61A, 61B, 61C, 70, 88, 162, 164, and 170. I am able to tutor Math courses numbered 1A, 1B, 10A, 10B, 16A, 16B, 32, 53, 54, 55, 104, 110, 113, 124, 125A, and 135. If I am currently on the teaching staff of a class, I cannot offer you tutoring services for that class.

Small Projects & Consulting

I sometimes take on small web development and software engineering projects at low cost for non-profits and startups. I work with fellow graduate student Rachel Lawrence on graphic design and implement web pages and software myself. I am proficient in most major programming languages, including C/C++, C#, Java, and Python.

I take on projects like building small static websites (backed by a CMS), designing startup landing pages, code review, writing documentation, performance analysis and tuning, academic proofreading and editing, and general implementation tasks. We negotiate payment on a per-contract basis.

If you need a capable software engineer or CS researcher for a short-term project, send me an email titled “Consulting:” followed by the name of your project.