One of the greatest Brazilian songwriters is not just a songwriter. She also composes, sings and plays. Marisa Monte masters the creative process from idea to production. Her work is astonishing because she knows profoundly every detail present in the whole.
Splitting user interface development between design and programming roles is a mistake. Isolated in their specializations, both are incapable of understanding the whole. A messy interface makes excellent code useless. A messy code makes delightful interfaces disappointing.
Before becoming a software developer, I worked as a graphic designer for over seven years. I created logotypes, packages, websites, advertisements, and animations. My biggest skill as a programmer is not to be a programmer only.
Clean code isn't less important than clean interfaces. SOLID principles are as valuable as Gestalt principles. I code without forgetting the importance of good design and design without forgetting the importance of good code. I know profoundly every detail present in the whole.