Hint: You have not seen the great ones. You have seen those that think they are great but are actually not that good. Sure, many of these people are really good at writing complex, unmaintainable code and at demonstrating to everybody how smart they are. But that is not what makes a great engineer. Execution critically includes coordination, communication, maintainability, etc. To be a great programmer, you need 30% exceptional coding skills and 70% exceptional other skills that complement them. Of course, actually great coders also understand their worth and you do not get them for the usual "programmer" salaries, so it is quite understandable that you have not seen many or any.