Pros
I taught a freshman engineering class for two semester. I also taught a lab for sophomore for two semester. So, in general I have four semester of teaching experience. It is a great place to learn. It gave me enough time to excel the course material while teaching it. It also gave me an opportunity to interact and manage students from different culture and different countries. That's a great leadership experience. Sometimes I had a Teaching assistant or lab assistant for me. I had to manage him which was an awesome experience. Like how to keep your TA happy and bring the best out of him. I meet one nerdy student ( who knows course material better than me ) every student from whom I can learn. Some of them became my good friends and I hope they will be my friends for the lifetime. You can design class on your own as far as you cover the course material. You can go at your own pace.
Cons
Relatively low salary without any compensation in Tuition fees and health benefits.