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.


Instructor: Kevin Zatloukal (he/him, kevinz at cs)

TAs: Sparsh Binjrajka, Ege Çağlar, Owen Daley, Jaela Field, Linden Gan, Elijah Greisz, Jeremy Gunawan, Ben Lambert, Allison Li, Michael Li, Katherine Murphy, Gargi Panatula, Soham Pardeshi, Betty Park, Helena Stafford, Alex Zhang, and Zhennan Zhou

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.


All course activities will take place in person.

Lectures: We have lectures on Monday, Wednesday, and Friday. These will take place at 10:30-11:20am in CSE2 G20 for Section A and 2:30-3:20pm in KNE 220 for Section B.

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.