The coolest thing about my job is the satisfaction of completing a new feature and seeing it function correctly (with no errors), this is especially satisfying if the feature was being worked on for a while with tedious bugs.
I love the satisfaction I get when I finally fix a bug that has been bugging me for a couple of days, or when I get a feature up and running that I have been working on for a couple of weeks.
The knowledge and skills you gain are not just from school, learning is a lifelong process and you must have a lust for learning, and most importantly, be able to persist.