Learn to always ask yourself, "How could things be better?"
When you make mistakes, don't ignore them. Think about what you could have done differently to avoid the problem. This ranges from little mistakes to big ones. When you find a bug in your code, think about how you could avoid that type of bug in the future. I don't mean in the simple sense of telling yourself to "watch out for fence-post errors." Rather, are there coding practices or testing practice you could adopt that would automatically avoid those errors, or bring them to light quickly. The book "Writing Solid Code" has lots of examples of this type of thinking.
But this applies beyond programming. Senior engineer usually need to do more than just write code. They have to be able to mentor and make decisions and recommendations in the context of the companies larger business needs, and so forth. So think about these "big picture" issues too. If you feel like your company makes it hard for junior programmers to figure out how to do something, then ask yourself how to fix that. If you interview somebody and like them, and they turn out to be a bozo, ask yourself what you should have done differently in the interview.
And do likewise with what everyone else is doing around you. If the build process is too slow, don't just grumble about it, figure out how to make it better, even if it's not your job---this could range from actually doing it to learning more about it so you can make useful suggestions to the people who own it. If you don't like or don't understand what your managers or executives are doing, ask yourself what you'd do differently.
Don't be afraid to ask your peers these questions. I find these types of questions great fodder for lunchtime conversations and it's a great way to learn from other people's experience.