Andrew’s answer is very good, so I’ll add just a few things.
1) Flexibility: This is kinda similar to learning quickly. But programmers have to strike a balance between depth and breadth of experience. Programmers that have super deep expertise in one area are awesome for niche positions, but on average you’ll be better suited if you are flexible and willing to try and gain expertise with new technologies. Don’t limit yourself to a very specific tech stack that you’re comfortable with, there’s soooo much to learn.
2) Seek and respond to feedback: If you want to be a better programmer, you need to ask for feedback from your peers and manager and really take that feedback to heart and think about how you can implement that feedback.
3) Continuous improvement: Learn always! Read technical blogs and books! Attend meetups! Tech moves so fast, it’s essential that programmers be able to stay on top of the industry and adapt along with it.
4) Systems thinking: Andrew is very correct that attention to detail is very important. But also, being able to see how your code and your systems relate to the broader whole will make you stronger and make your output better. People love working with people that are able to see the forest through the trees and design solutions that work for everyone.