I spent quite some time this week reading the thread below on quora.
What distinguishes a good software engineer from a great one?
It has great tips from more experienced professionals on what it takes to be not only a good software engineer but a great one. I got especially happy that many answers had a business term, such as "business-awareness". While most of software engineers strive to master latest trends in tools and technologies, only a few of them look at the big picture, and in my opinion that's a big mistake.
Anyways, great discussion. Worth a look.

