Early in my graduate school career, a professor told me that research is a side effect of teaching. I have come to agree over the years. Teaching and mentoring students is the most important way professors make an impact upon the world, especially at R1 universities.
My teaching goal is to instill my students with the curiosity to ask the who and why questions, and not just what and how. A background in computer engineering empowers students with agency in society, so it is vital that my students to go beyond merely applying their schoolwork; they must analyze, synthesize, and evaluate the impact of their work on the world. More concretely, I want them to value teamwork and communication in their careers as engineers. I have worked toward these goals as a teaching assistant and I aim to meet these goals in classes I might teach, which include an undergraduate or master’s class in computer architecture and a master’s or seminar class in quantum computing.
I was a teaching assistant for two terms of Computer Hardware Design, a graduate course in microarchitecture and register-transfer level design, synthesis, and layout of digital electronics. The class was particularly influential to me as I took it as a capstone course in my undergraduate senior year, and it is how I met my dissertation advisor, Prof. Simha Sethumadhavan. As a teaching assistant, I met with the roughly 40 students every two weeks as they worked toward completing their course projects.
The class projects are intended to develop the students into outstanding engineers—this primarily meant developing their teamwork, writing, and presentation skills. These objectives go beyond the typical expectations of computer engineering project work, which usually focus on tools and implementations—and this class had plenty of technical depth. We required students to form teams with clear roles for each member in designing, implementing, or validating their computer circuits. We required multi-stage documentation, from the students’ early-stage proposals to their final reports, and we gave feedback on the quality of the writing in addition to the content. We required students to track hardware bugs and their resolution over the course of the project. Setting these expectations about teamwork and communication takes time and effort from the students and instructors. Ultimately the efforts are worthwhile because the methodology is more important than any specific technique the students may pick up from the class. Going forward, I will make sure the materials, homework, and projects I assign serve the mission of training well-rounded engineers.
I would use my opportunity to build a computer architecture curriculum to use the RISC-V instruction set architecture (ISA) as the primary working example. I embrace the open-source ISA because it offers a unified framework in which undergrads can initially learn about logic and pipelining; students can rely on this framework all the way through graduate project work where they may make open-source contributions back to the community. I plan to assign class projects that ask students to design RISC-V extension instructions—for example, to support a media codec—-and then extend a minimal open-source RISC-V implementation to support their instruction. In the longer term, I want to include hands-on tutorials with Google TPU accelerators for neural networks and Amazon EC2 F1 FPGAs. These class modules will take several iterations to strike a balance between depth and the students’ time. Architectures outside of CPUs are becoming mainstream, so it is important that students get exposure to these frameworks early on. I will continually improve my curriculum, so it connects students to changing technological support for societal needs.
I would build a quantum computing curriculum that culminates on quantum algorithms that researchers believe will be useful in the near term. Near-term algorithms for chemistry and optimization have matured in the past five years; because they are relatively new, they are not yet covered in typical quantum computing syllabi, which typically focus on resource-intensive algorithms that factor integers and search databases. It is important for my students to be familiar with both near-term and future quantum algorithms. For the student projects portion of this class, I would ask students to pick a potential quantum algorithm and develop a report and presentation about that algorithm. I would ask them to analyze how the algorithm works, synthesize existing literature on how the quantum approach compares to classical algorithms, and evaluate its potential impact on society if running such an algorithm is practical. I want them think about who stands to gain and lose and what are the ethical implications of the new technology. If they have a balanced understanding of the prospects of quantum computing, they would be better prepared to help society become better informed about its potential impact. Across the classes I teach, I will ask my students to similarly evaluate the impacts of technology outside their profession and across the world.
During my graduate school and postdoc career, I have contributed to efforts to increase equity, diversity, and inclusiveness in STEM education. I have mentored several women undergraduate and master’s students for research projects. I have also volunteered for high school STEM programs during the school year and over the summer, and I have spoken at outreach events such as career panels for high school students. When I volunteer on career panels and meet college-bound students, the one piece of advice I always share is they must go to their professors’ office hours; it is how they can access the mentorship and network that their professors offer. When I become a professor, I will hold up the other end of the bargain: if the class size permits, I would like to meet all my students in person during the term. I will expand these efforts in my career as an educator to make my classroom and my field an inclusive place for my students.