Teaching as a Developer - Read Time: 4 Minutes


Yesterday i had attended the "graduation" day at Google for the kids from less well to do backgrounds.

That i was teaching through Code in Community as a Coding instructor during the weekends at Bedok Library from March to June this year.

It was really an  wonderful and eye opening experience that the Country Manager of Google Singapore gave the opening address along with our Minister and SaturdayKids founder.

The event was to congratulate the kids in completing their 10 week programming course in either Scratch or Python.

With a tour around the Google office to expose and inspire kids to create with technology instead of the other way round.

Why Should I Teach?

Well.. i do understand that if your given a choice you would rather prefer do others and do your own side projects instead of teaching people. 

There's actually a lot of benefits that comes with being a teacher that could be useful for developers regardless if your a junior or senior level.

Who would like to become better at their craft or inspire more people to use your knowledge. 

So here's are a list of benefits that i personally believe on why i feel it's useful to teach as a software developer regardless if your junior or a senior developer.

Benefit 1 - You Learn More As You Teach

There's always a common saying as you teach others, you will have a better grasp of the subject.

I believe it is due to the pressure and obligation of teaching a group of students regardless if it's kids or adults. 

You will have the tendency to constantly conduct your own research by trying outing exercises and further refining your learning materials.

In order to provide a better learning experience for your students by conducting it in a way that allows your students to grasp the subject matter effortlessly.

Benefit 2 - Ease of Expressing Your Ideas

Ability to communicate and spread one's idea or just to get your point across is actually quite important as a developer.

As i find that during my work, we tend to have a bunch of misunderstanding or miscommunication.

While in explaining our engineering decisions or reasoning to another developer despite we are speaking in the same language.

Who is unfamiliar with the work you had been doing, in order  to complete a task in a effective and efficient manner.  

So that you could focus on higher value task that requires your own attention to deliver. 

Benefit 3 - Path to a Leader That Creates Impact

I find that the most direct benefit is that through being a teacher.

It allows you to gain confidence to progress your career towards a senior developer or trainer or a mentor that creates a impact to more people around you.

Instead of being a individual contributor, your moving mountains and spreading your message across this wide socially connected world. 

Which allows you to become a thought leader or just a person who has created an impact for an individual that does work using the skills or knowledge you had thought them. Won't that be a awesome feeling?


Teaching is actually a very useful skill be it to present one's idea.

To delegate a task to your teammates, just showing the ropes to a new hire by company or replacing yourself so that you could focus on solving harder problems.

It's really a necessary skill that one could make a living out of it as a consultant, trainer or just so that you enable social change for your recipients of your teachings. 

Looking back after been teaching in both official or unofficial manner,

There's always a sense of pride when your students has a ah ha moment or sparkling eyes with interest in solving a problem.

So i would gladly encourage any developer who has never teach in their lives to think of way to teach.

It could be in a form of class size, workshops, youtube videos, podcast or just blogging there's many ways to teach as software developer.  

Top 8 Developer Habits: Fun Fun Functions


Should i Teach In Order To Learn


Code in the Community - Making digital literacy accessible to more kids in our community