Teaching Statement
Teaching Statement
Teaching large classes in computer science and electrical engineering presents unique challenges. With student numbers often ranging from 100 to 200, it is essential to create structured, engaging, and resource-rich learning environments. During my time as a Teaching Assistant for Computer Architecture and Computer Networking Architecture at Duke University, I gained valuable experience in preparing lecture materials, designing hands-on projects, and creating well-structured exams. These experiences have shaped my teaching philosophy, which emphasizes high-quality lecture slides, practical project design, and effective assessment through exams.
Teaching Philosophy
In large classes, the use of comprehensive lecture slides is crucial. I believe that slides are more than just a teaching aid; they are a key resource for students, especially in courses where individual interaction may be limited due to class size. My approach is to create slides that are concise, contain accurate definitions, and are supplemented with ample examples. Rather than replicating textbook content, I aim to present material in a way that simplifies complex theories while providing depth. Visual aids, such as diagrams and flowcharts, help bridge the gap between theory and practice, ensuring that students can grasp even the most challenging concepts.
Another cornerstone of my teaching philosophy is the importance of hands-on learning. I design projects and assignments that allow students to apply the concepts they learn in lectures. For example, in the Computer Architecture course, I helped create projects that focused on pipelining and parallelism, giving students the opportunity to simulate performance improvements in computer systems. Similarly, in Computer Networking Architecture, projects that involved building and troubleshooting network architectures reinforced students' understanding of networking protocols and real-world challenges.
Exam design is a crucial aspect of teaching, particularly in large classes where assessments often serve as the primary means of evaluating student comprehension. My approach to exam design is rooted in the belief that assessments should not only measure students’ retention of facts but also their ability to apply what they have learned. This ensures that students who may excel in hands-on projects have the opportunity to demonstrate their understanding in a controlled, exam environment. Furthermore, I ensure that exams are fair and clear, providing detailed instructions and well-defined grading rubrics to avoid ambiguity. These strategies help reduce student anxiety and promote transparency in the grading process.
Experience
At Duke University, I had the privilege of serving as a Teaching Assistant for Computer Architecture and Computer Networking Architecture. In these courses, I not only host office hours to assist student to solve problems they met during study but also played an active role in designing exams.
During office hours, I make it a priority to tailor my teaching style to the individual needs of each student, as I recognize that students come with different levels of understanding and learning preferences. One memorable example comes from my experience as a Teaching Assistant in Computer Architecture. A student came in struggling with the concept of pipelining, particularly how instruction dependencies can cause stalls in the pipeline.
After discussing the basics, I realized that the student was more comfortable with visual learning. I adapted my approach by drawing detailed pipeline diagrams, highlighting where stalls occur and how various solutions like forwarding and branch prediction could minimize these issues. I walked them through specific examples step by step, visually showing the impact of each decision on the pipeline.
In contrast, another student from the same course had a strong grasp of the theory but was struggling to apply it in practical scenarios, particularly in understanding performance trade-offs. With this student, I took a different approach. We examined performance metrics such as execution time and speedup, and I presented them with a real-world problem where they needed to optimize the pipeline for a specific use case. By allowing them to approach the concept from a problem-solving perspective, they were able to see the practical implications of their theoretical knowledge.
In both courses, I worked closely with the lead instructors to develop exams that tested students on both their theoretical understanding and their ability to apply concepts in practical scenarios. In Computer Architecture, for example, I helped design questions that required students to analyze the performance of different architectures under various conditions, encouraging them to think critically about the trade-offs between speed, cost, and efficiency. Similarly, in Computer Networking Architecture, exams included both theoretical questions on protocols and practical problem-solving exercises that asked students to troubleshoot network issues based on real-world scenarios.
To illustrate my commitment to creating learning materials and assessments, I have included examples of my syllabus, lecture slides, tests, and student evaluations.
Plan for Future
For undergraduate teaching, I am particularly interested in courses that bridge foundational concepts with hands-on experience. My teaching expertise aligns well with fundamental electrical engineering courses such as Digital Circuit Design and CMOS VLSI Design Methodologies. Additionally, in the realm of computer engineering, I am well-prepared to contribute to courses like Computer Architecture and Computer Networking, where I can help students not only understand the theory but also apply it through projects and practical exercises. My experience designing lecture materials and exams ensures that these classes will provide both clarity and challenge.
Moreover, I have a strong interest in teaching mathematics courses, such as Vector Space Method and Optimization, which are integral to both engineering and my current research in AI Security. These courses provide the mathematical foundation necessary for advanced topics in both electrical engineering and computer science, and I aim to teach them in a way that bridges theory with real-world application, ensuring students are well-prepared for both academic and professional challenges.
In addition to teaching existing courses, I am enthusiastic about developing new courses that align with emerging technologies and research areas. For example, I am interested in creating courses that focus on AI Security, where students can explore both theoretical foundations and hands-on security challenges in artificial intelligence systems. Through this approach, I aim to contribute to the development of curricula that prepare students for the rapidly evolving landscape of technology.