**My Teaching Philosophy Statement:**

My teaching philosophy is to stick to the fundamentals and to be clear in your concepts. Just like how foundation is important for a building, understanding fundamental concepts is also very vital in learning new concepts. If a student is able to understand the basics of core concepts, then he/she can implement them in solving the required problem. I believe teaching is a two way learning process. You teach new concepts to the students and you also learn new methods to deliver the same concepts over time, and improve your teaching methodology.

*Following are my goals while being in a class, or sitting with my students in the office:*

**Develop a healthy learning environment:**

A positive learning environment is very critical in understanding the subject matter. I motivate my students by making them aware of what would be the likely outcome of learning this concept. For instance, I show them on www.glassdoor.com how much a .NET Developer makes. This motivates the students and re-aligns their focus. I encourage students to participate in discussions and ask questions. Former Indian president Late Dr. APJ Abdul Kalam once said, “*One of the very important characteristics of a student is to question. Let the students ask questions.*”

Giving my students challenging yet attainable tasks, increases their self-confidence. I believe a healthy learning environment is in which students don’t hesitate making mistakes, rather they see their errors as part of the learning process. I feel satisfied and excited watching my students discussing the errors and finding alternate solutions.

**Stick to the basics:**

It is my strong belief that if the concept is delivered in a clear and in easy to understand language, it is more effective than delivering at a very high-level, which is only understood by few intelligent students of the class. I want my time in the class to be well utilized and to be worthy. I always try to give realistic examples that will lead them to better understanding of the topic. I love to see the expressions on my students’ faces when they get the desired output from the program, its priceless.

**Actively engage the students in learning process:**

I create an interactive environment to engage the students for deeper understanding of the material. I throw a mixture of easy and hard questions to the students. Answering easy questions increases their confidence and hard questions give them more insight of the topic and gives them the idea how far that topic can go. When students ask questions, I give the opportunity to other students for responding. The objective of programming a computer is to solve a real life problem. It is very critical for students to learn the art and science of programming. Students must be actively engaged in problem solving, to understand the core concepts of programming. Students get more engaged when they are performing problem solving than when they are simply listening to a lecture.

**Is my teaching method working?**

I find that different students have different methods of learning. Some students like to see the big picture, while others want to know each part of the concept in detail. I facilitate this by giving practice problems. Some like simple problems to understand the concept, while others like more complex problems. I have always looked for better ways of teaching. I can see my teaching skills are working, from the assignments and final projects, when some students do beyond the expectations. Also the feedback I get at the end of each term helps me determine my areas of improvement.

**Provide feedback to students’ efforts:**

Recognition of the efforts done by students in solving a problem motivates them to do more and boosts their confidence level. Letting them know that they have done a great job encourages them. I often see from their expressions that they feel pride in solving a problem. I also give feedback on assignments to each single student to acknowledge their efforts. Some students miss few things required in the assignment, so I guide them on how they could improve their coding logic for solving that problem. Some do exceptionally well and I say some nice words to credit their efforts and advise them what next they could do with their assignment.

**Take time to explain concepts:**

I usually take time to reinforce the subject matter upon which students can build their knowledge. I show them step by step how to reach to a solution for a particular problem. Some students are fast learners and I then ask them to do some enhancement to the solution. Some are slow in understanding the concepts, and find difficulties in figuring out a solution. I go slowly on these students to make sure they grasp the concept and are able to find a solution. I also make myself available on request and devote time to the needy students in the office.

**Conclusion:**

I believe that the role of a teacher is that of a leader where you have to show the path, motivate, encourage, and lead by example. Over the years, I have learnt new skills in incorporating active learning in my classroom. Finally, the rewards are immense as I enjoy being a teacher. My success lies in seeing my students succeed and I experience it when I see my students move on to industry or graduate school