Why Teaching Kids Has Made Me a Better Software Engineer

Why Teaching Kids Has Made Me a Better Software Engineer

Mar 11 2020

I work with kids a lot. I work a part-time job teaching and mentoring kids learning how to code, and I also volunteer at a nonprofit organization to help mentor kids to learn how to code as well.

Anyone who knows me well enough can say without hesitation that I don’t work well with kids. I’m awkward and a little bit shy when working with kids, but I’ve gotten better over the last few months. Over that time, I’ve noticed that I’ve gotten better at explaining certain topics, breaking down hard concepts, and even learned a few new things! I’ve learned that teaching kids forces you to truly understand what you’re doing, and here are some reasons why I believe this is the case.

Kids will question you

It is known that a child’s favorite question is, “Why?”. From my experiences, this statement could not be more true. Whenever I try to explain a topic to a student, concept, or piece of terminology, I can never say another word without that student asking me, “Why?”. Sometimes, it’s a simple explanation. But, sometimes it’s a question that leaves me speechless, and you can’t help but question your own knowledge as well.

Students have asked me that question numerous times, and it’s pushed me to research deeper into the concept at hand and fully understand what I was explaining. It has not only validated that I don’t always truly understand what I’m teaching but also pushed me to understand it better.

Kids don’t understand the topic as you do

You know more than the student. Chances are, if you’re teaching someone, you probably know more about the topic at hand. It’s important to understand that kids aren’t on the same level of knowledge as you and that they won’t always understand what you’re talking about. It’s led me to realize that when explaining certain topics, it doesn’t make sense to the student when I use fancy terminology or vocabulary. Even words as common as “processing”, “network”, or “storage” sound like a different language to some students. The worst part is that kids usually won’t tell you when they don’t understand something. They will continue to listen to you without understanding what you’re saying, making your whole explanation completely useless. This has taught me to explain terminology when I use it, or to find alternatives to using it. It goes back to truly understand the topic at hand. If you don’t truly understand what you’re teaching, it won’t make it any easier for the student to learn.

Kids will remind you of what you don’t know

Part of the reason why I was able to land a part-time job and a volunteering position was because I understood software engineering, and was completely capable of teaching kids how to code. But, everyone has holes in their knowledge, and teaching kids has definitely exploited defects in my knowledge. I was once teaching a student basic Javascript principles, and he asked me a question that had to do with how the event loop worked. Up until that point, I only had a vague idea of how the event loop worked, and I wasn’t able to give him a good answer to that question.

It made me realize that I didn’t understand a very crucial concept in JavaScript, and it pushed me to understand it better. Whether you were teaching a concept you thought you knew but really didn’t, or a concept you had no idea you didn’t understand, teaching kids can show you that you don’t truly understand what you’re doing, and you still have a lot to learn. This is not just specific to software engineering or computer science, but any field. We are all students, and teaching kids is something that’s helped me develop in my knowledge in ways I could’ve never imagined.

If you have any questions, feel free to message me on LinkedIn!