O que difere um programador bom de um programador ruim é simples.

Um programador bom ele vai alem do código, constrói uma solução que consiga vencer o tempo, para isso ele precisa conseguir fazer algo dificil que poucos dominam transformar coisas complexas em coisas simples, para que o sistema ou solução possa ser mantido por diversas pessoas.

Existem dois tipos de sistemas aqueles que dificultam processos e o tornam pior ou sistemas que são tão bons que ninguém consegue viver sem eles.

Um bom programador vai além de escrever um código limpo, conseguir usar os melhores paradigmas, um bom programador entende que o código é so um meio para uma solução.