CSE 331

The aim of this course is to help students write programs of higher quality and increased complexity. This requires creating software that is correct, easy to change, easy to understand, and easy to scale. The course covers principled approaches to achieving each of these.

If you want to learn more about the policies and structure for this class, please check the course syllabus.


All course activities will take place in person.

Lectures: We have lectures on Monday, Wednesday, and Friday. These will take place at 10:50-11:50am in PCAR 391.

Sections: We have quiz sections on Thursdays. See the time schedule for times and locations.

Office Hours: These will be held in person throughout the week. See the course calendar for times and locations.


Soham Pardeshi

Soham's profile photo



Email: spard @ cs

Edison Leung

Edison's profile photo


Email: edleung @ cs

OH: Thur 10:00-12:00, CSE 2/F Breakout

Katherine Murphy

Katherine's profile photo


Email: kate2001 @ cs

Ken Matsui

Ken's profile photo


Section AB

Email: kmatsui @ cs

OH: Wed 15:30-16:30, CSE 5/F Breakout &
Fri 15:30-16:30, CSE 2/F Breakout

Tanay Vakharia

Tanay's profile photo


Email: tanaycv @ cs

OH: Mon + Tue 17:30-18:30, Zoom

Thrisha Ramesh

Thrisha's profile photo


Section AA

Email: thrisha @ cs

OH: Thur 14:30-16:30, CSE 5/F Breakout

Contact Info: Please use the message board whenever possible. The answer to your question is likely to be helpful to others in the class, and by using the discussion board, it will be available to them as well. For grading or other private matters, you will get the fastest response by sending email to cse331-staff at cs, which will reach both the instructor and all TAs.