My first sustained experience as a teacher began in martial arts. As I progressed in Tang Soo Do, I started helping friends practice their forms and eventually began teaching entire classes. I loved watching someone develop a skill that had once felt unfamiliar or out of reach. Knowing that my instruction had played a part in that progress gave me a sense of accomplishment that stayed with me. I knew I wanted teaching or coaching to be part of my life.
After graduating from high school, I began working as a private tutor through Michigan's Department of Health and Human Services, introduced by one of my JROTC mentors. I helped a student with subjects ranging from mathematics and physics to history and social studies. Revisiting material I had learned and finding ways to explain it to someone else deepened my appreciation for teaching. As my student’s exam grades improved, I could see the difference our work was making. I wanted to keep developing the skills that helped someone become more confident and independent in their learning.
During my first year at the University of Michigan, that interest found a new direction through EECS 203, Discrete Mathematics. I took the course in my second semester and quickly fell in love with it. Until then, my mathematical background had extended through introductory calculus. Discrete mathematics gave me a way to approach proofs, mathematical writing, and theoretical computer science that I had never had before. It felt like a skeleton key to higher-level mathematics: ideas that had seemed inaccessible were beginning to make sense.
The course staff played a major role in that experience. Each Wednesday, I attended office hours led by a graduate student instructor named Eric, whose regular session ran from noon to six. I initially went for help with the course’s challenging discovery problems and often stayed for the entire session. Those afternoons gave me time to work through difficult ideas, ask questions, and learn from the people around me.
As I became more comfortable with the material, I began helping friends who were struggling with it. Wednesday office hours were especially busy because homework was due the following day. Eric noticed that I enjoyed explaining concepts, and he started asking me to help students with topics I had worked through. I gave explanations, asked questions, and helped students develop their own reasoning. I drew on the approach I had practiced as a tutor: guide someone through a problem in a way that leaves them better prepared to approach the next one.
One problem that many students asked about involved induction on ternary strings. At first, its abstract wording made it difficult to see where to begin. I worked through small examples with my peers, considered the different cases, and explored what happened as the strings grew longer. Together, we built intuition for the structure behind the problem. I found it rewarding to watch a question that had initially seemed intimidating become something a classmate could reason through.
When I applied for a teaching position in EECS 203, I returned to that same problem for my teaching demonstration. I chose it because I had seen where students struggled and had practiced helping them work through those difficulties. I rehearsed and recorded a six-minute explanation, using examples and increasingly complex cases to build toward the underlying idea. The demonstration reflected the way I wanted to teach: start from something a learner can understand, then help them connect it to the larger concept.
By then, I had a clear picture of the role I hoped to fill. I had attended the course’s large exam-review sessions and admired the staff who could help an auditorium of students prepare for a difficult test. I remember watching those reviews and thinking how much I would enjoy doing that work. Students had also begun thanking me for the help I gave in office hours. Those experiences encouraged me to take teaching seriously as a professional direction.
I also applied to the University of Michigan’s Joy of Coding program. Programming had been an important part of my life since I began creating Roblox games as a child, and I wanted to share that enthusiasm with students encountering it for the first time. Over the summer, I joined the program’s staff and helped students learn Python and explore artificial intelligence. My teaching ranged from introductory functions to neural networks in PyTorch, connecting programming with the linear algebra and machine-learning concepts behind the work.
Joy of Coding gave me valuable experience teaching remotely. I brought the questioning and explanation techniques I had developed through tutoring into a new setting and practiced helping students navigate unfamiliar tools and ideas. Working with beginners reminded me how much a teacher can influence someone’s first experience of a subject. I wanted students to feel that they could ask questions, make progress, and develop the same curiosity that had drawn me to programming.
By the end of the summer, I received an offer to join the EECS 203 teaching staff. I accepted immediately. When we expressed preferences for staff responsibilities, I made student support and exam review my first choice. Those were the experiences that had inspired me to apply, and they were the areas where I most wanted to contribute.
I now help lead student support and exam review, offer one-on-one tutoring, and teach a discussion section every Friday, followed by office hours. My discussion meets in the same classroom where I once attended Eric’s section as a student. Recently, I also helped lead an auditorium-style exam review, taking on the role I had admired just a semester earlier. Returning to those spaces as a member of the teaching staff has made my progress feel especially tangible. The instructors who encouraged me have become colleagues and friends, and I now have the opportunity to support students in the same way.
My work also includes helping write homework and exam questions. I enjoy finding ways to connect formal reasoning to something students recognize. One problem I developed uses Wordle to explore how proofs can reveal subtleties in an algorithm that seems straightforward at first. Designing a question requires me to consider what students should discover, what prior knowledge they need, and how the problem can help them build a stronger understanding.
I am also thinking about how to make the course’s expectations clearer. One resource I am developing explains what students can and cannot assume when writing proofs on homework and exams. I have seen how uncertainty about those expectations can make a problem harder to approach. My goal is to give students a clearer starting point so they can focus their effort on the reasoning itself. This is an ongoing project, and it reflects how I want to approach student support: pay attention to recurring difficulties and look for ways to address them across the course.
Some of my most satisfying moments still happen in individual conversations. A student may arrive at office hours after missing lectures or feeling unsure how to begin an assignment. Helping them rebuild the necessary ideas and leave ready to make progress is deeply rewarding. My goal is for students to explain the reasoning themselves and gain the confidence and understanding to continue independently.
Teaching has become central to how I understand leadership. It asks me to listen carefully, recognize where another person is starting, and communicate in a way that helps them move forward. Those responsibilities apply whenever I coach a teammate, explain a technical idea, or help someone approach an unfamiliar problem. As I continue my professional journey, I want to keep creating the kind of support that helped me grow. Helping others become more capable is work I find meaningful in every setting.