Characteristics of a Good ProgrammerImpressive technical skills - Good programmers dive into a deep understanding of technical stuff. They learn about what it can do, how it works and why.
Willingness to learn - In a field like software development that's changing and advancing every moment, you should grasp knowledge and information from everywhere.
Teamwork mentality - Great programmers offer teammates help when they are stuck, teach new skills to others and write documentation that would help teammates.
A business perspective - A great programmer doesn't simply complete tasks that are assigned to them, but they take into account the broader impact on the system and user experience as a whole.
Passion - It's the key to success. If you are passionate about your work you are more likely to become a good programmer.