I enjoy teaching. It is gratifying to give students new insights and watch them develop intellectually. Moreover, my view is that teaching is a necessary activity to develop my own understanding. The reason is summed up nicely in a quote from Cato the elder: rem tene, verba sequentur, i.e., grasp the thing and the words follow. This makes teaching an integral part of research, an important exercise in testing one’s own understanding. I believe the core of teaching is empathy. Beyond technical expertise, empathy underlies much of what makes a great teacher. It enables a teacher to be a guide to students in their own intellectual growth process. By putting myself in someone else’s shoes, I aim to figure out the best way to explain a difficult topic according to what she may or may not understand already.
I have been interested in teaching to transfer and develop my own knowledge since high school, having taken on various tutoring jobs in guitar, math, finance, and computer science. During graduate school, I had the opportunity to be the recitation leader for two semesters of data structures and teaching assistant for various courses, giving me practical experience in a university setting. I have also been fortunate to take classes from several excellent teachers. Combined, these experiences have given me some pedagogical insights I plan to apply, develop, and refine as a professor.
Use examples. It is far easier to grasp a challenging concept when working from the concrete to the abstract. I have found this to be an indispensable skill for technical talks as well. When I taught recitation for data structures, I would come prepared with specific examples to walk through in case students had questions about how or why an algorithm worked. I would even perform live programming in classes to show students answers to their questions rather than just tell them. These efforts received positive feedback from students, and tended to evoke more interaction with students in class.
Stimulate engagement. Student engagement in their own education is important, be it through class participation, office-hours, study groups, etc. Furthermore, participation in class discussion by one student can elucidate gaps in my teaching and help the entire class. One trick I learned to encourage participation is to ask students “what are your questions?” rather than “are there any questions?” This seemingly minor change in phrase assumes questions are the norm, rather than an interruption. Combined with an awkward silence, this strategy worked very well to encourage student participation in class. Outside of the classroom, online forums and office hours are useful tools to keep students engaged. I have found that online forums where students can discuss questions with each other provides a less intimidating environment to keep students engaged with course material.
Create a safe environment. Part of what makes student engagement possible is to provide a safe and nonjudgmental classroom environment. Students, particularly undergraduates, may feel inhibited to speak up in class in spite of having something valuable to say. In my recitation, one female undergraduate student felt uncomfortable asking questions in class. Even more surprising, this student felt she was not doing well in the course despite being an excellent student. I started calling on her in class, especially when I was sure she knew the answer, to help ease the burden of speaking out. She eventually participated on her own more often, becoming an asset to her classmates.
Interact with students. I like the Socratic method, when used judiciously. Carefully constructed questions can lead students to discover the answers for themselves, carving deeper grooves in their minds. The question and answer dialogue is also a useful tool to understand where students need extra explanation and to encourage participation. For large lectures, I plan to use technology that allows students to conduct real-time quizzes in class.
Join the cult of clarity. The best teachers I have seen unfold a topic in a logical way and predict where difficulties and misunderstandings may appear. When a student fails to understand, I first look to where my own explanation or understanding is unclear and try to refine a topic based on student expectations. Creating clear explanations comes from a combination of a deep understanding of a topic as well as empathy for the audience.
I am excited to apply these insights to my own courses. I am prepared to teach a variety of core courses, including programming languages, compilers, data structures, and operating systems. Additionally, I would like to teach or develop graduate and special topics courses in program analysis, software security, blockchain, and software product lines to give students the benefit of my particular expertise.
I was not part of a research lab in graduate school, instead working largely alone. My postdoctoral experience, however, has exposed me to well-managed research labs at Yale University and University of Maryland at College Park. As a professor, I intend to provide a cohesive research group experience for my students. After all, an important part of being a great researcher is collegiality: she should be able to develop respectful relationships with other academics and conduct collaborative research. I have been fortunate to observe the Score method of managing a research lab in action at UMD College Park. Score is an adaption of the Scrum agile development methodology for academic research labs . This method has pragmatic goals: it makes more efficient use of mentor-student time by eschewing long, weekly one-on-one meeting. Instead Score favors frequent, brief group status updates punctuated with ad hoc meetings according to demand. But beyond optimizing time, it encourages group spirit: everyone in the group receives frequent interaction and is aware of each other’s work, progress, and road blocks. This helps create well-rounded researchers that are well-equipped for academia and industry.
When it comes to individual mentoring, my goal is to cultivate independent-minded, critical-thinking graduate students who have high standards of quality. Many of the same insights I have collected for teaching apply to my mentoring strategy. What differs is that the relationship is one-on-one, so what I do, as opposed to what I say, has a larger impact than in a classroom setting. I hope to be an example for the way an academic conducts high-quality research by keeping an open mind, welcoming criticism, and applying scientific reasoning.