Software Engineering tutor at the University of Adelaide. This was perhaps the most rewarding type of work I have done. Tutoring students to learn software engineering concepts. I take a similar approach to working with clients who have the desire to understand the solutions and problems of projects.
There were of course students who did not have the desire to learn, but they're the best students to work with as they test your skills. It's important to show them why they must learn the concepts of software engineering. It's always nice to provide them with the motivation to learn.
It was most rewarding watching the students grow and learn overtime. They started to understand more complex systems. The light bulb moments are great too!