Faculty in CSE @ UC San Diego
வணக்கம்! Hello! My name is Gerald Soosairaj (ஜெரால்ட் சூசைராஜ்), and I am an Associate Teaching Professor in Computer Science and Engineering at the University of California, San Diego. I was born and raised in Chennai, Tamil Nadu (the land of tradition and good coffee, as some say!), which is also where I completed my undergraduate studies. My area of research is computing education and I co-lead the Computing Education Research Lab at UC San Diego. Prior to joining UC San Diego, I completed an interdisciplinary Ph.D. in Computer Sciences and Education and a Masters in Computer Sciences at the University of Wisconsin-Madison. I did my undergraduate studies in B.Tech Information Technology at College of Engineering Guindy (CEG), Anna University in Chennai, India.
I am extremely passionate about teaching and have experience teaching multiple lower and upper division computing classes at UC San Diego and UW-Madison. I have taught a wide variety of students from many different backgrounds ranging from K-12 (4th and 5th grade children) to working professionals.
I strongly support the creation and use of open educational resources (OER) in computing education to help students from lower socioeconomic status. I make most of my course materials including but not limited to lecture videos, textbooks, class notes, programming assignments, and worksheets freely and publicly available online. I co-authored two free online interactive textbooks for introductory programming courses in Python and Java and they are widely used in our lower division CSE courses at UC San Diego.
I teach a course called ‘Human Centered Process Oriented Intro to Programming’ (CSE 8A/6R). The course emphasizes a mastery-based and collaborative approach to learning, helping students master the basics of computational problem-solving and programming, while developing effective collaboration skills. Our class places a strong emphasis on the problem-solving process over the final product, encouraging students to learn from feedback and develop a true mastery of the concepts. Link: https://cse8a.site/
I also designed and developed a first-of-its-kind course called ‘Working with Large Code Bases’ (CSE 190). This course introduces students to working with large codebases in a systematic manner, focusing on equipping them with the skills to navigate and contribute to extensive, pre-existing code bases effectively. Students engage in hands-on learning experiences that emphasize program comprehension techniques (such as code navigation and debugging) alongside best practices for code management workflows (including version control and collaborative development). By the end of the course, participants gain practical experience in contributing to large code bases and are prepared to tackle real-world software engineering challenges. Link: https://cse190largecodebases.github.io/sp25/
I am the Principal Investigator (PI) for the following NSF-funded research projects:
Improving Students’ Program Comprehension while Working with Large Code Bases: This project aims to address the academia-industry gap by developing a high-impact course focused on teaching students how to work on large, existing code bases, preparing them for a career in software development. The project is grounded in two relevant theories (Cognitive Apprenticeship and Information Foraging Theory) to advance our understanding of how students comprehend large code bases and design a course that imparts program comprehension skills to students.
Generation and Evaluation of Culturally Relevant Computing Resources for Introductory Programming: This Broadening Participation in Computing Demonstration Project is generating and evaluating multi-cultural computing resources (e.g., a new textbook) for students in undergraduate Computer Science (CS) programs. The project aims to evaluate the efficacy of these new resources with respect to student learning, retention, sense of belonging, self-efficacy, and attitudes towards computing in a CS1 course, with the goal of developing and disseminating widely applicable models for building inclusive computing curricula that create opportunities for all students.
NOTE: This initiative is open to all eligible members and does not discriminate against, or grant preferential treatment to, any individual or group on the basis of race, color, national origin, religion, sex, disability, and/or other protected categories.
I am a member of the UCSD CSE AI-aware Curriculum Committee.
I am also involved in outreach activities to promote computing education among K-12 students. I have collaborated with local schools and organizations to conduct programming and mobile app development workshops, aiming to inspire young minds to explore the world of computer science.
In my free time, I enjoy playing tennis and practicing yoga, meditation and asanas. I love playing cricket, basketball, table tennis, and badminton whenever I get a chance. I am an adventure enthusiast and have tried activities like skydiving, bungee jumping, climbing the Himalayas, scuba diving, and paragliding! :)
If you would like to meet with me, please visit this link: Contact Information