That's quite a broad question. It depends on a lot of things, like where you teach, what age you teach, what subject you teach, and what training you have. In general, though, being a public school teacher is challenging but immensely rewarding. You have to work a lot, but you also get the satisfaction of knowing that you are directly changing people's lives. However, being a teacher can also be very frustrating since you have to answer to a lot of different people -- like parents, the principal, the superintendant, the union etc. On the other hand, the pay is pretty good and you get the summers off!
Teaching involves a number of different skills and qualities whether public/private/charter. I would say the most important are:
- People skills - being friendly and working well with others. You will need to be personable, caring, kind, friendly, compassionate, and understanding. These qualities make a great teacher. But you also need to be stern and firm in your directions, rules, and discipline
- Public speaking - every day in your class you will need to be able to speak and present information to your students, practice speech, and practice fluency of language and talking in front of others
- The subject you plan to teach - become a master of the subject you plan to teach, make sure you know as much as possible and learn as much as you can about the subject you plan to teach. Take as many classes as possible in this subject and learn everything you can about it.
- Psychology & Human Development - start reading books and research articles on human development and psych. It will be helpful for you to know how people learn at different stages and the best ways to teach them at these stages (depending on stage of development and schema).