I like the thought that everyone is a designer, after all, that’s the sole reason why you’re in the company, to contribute something meaningful that will affect the end user. And if what you’re working on has no bearing for the end user, that’s when you might have to think about what exactly you’re contributing.
Too often there’s an imaginary line drawn between the team that does “development” and one that does “design” and they don’t mix. There’s a lot of hand offs from one to the other but it’s hard to get that true collaboration going. Part of that is that we’re still believing in singular roles for people. If you’re a designer, you do high level PSD work. If you’re a developer, you write code.
But the world, and especially the entire software development process is a much greater mixed bag nowadays. So much code and interaction goes into the front end and the back end needs to be extra cognizant of what goes on in the front to deliver proper data and UI elements.
One can no longer exist in a vacuum without another and it becomes important to help developers acquire an eye for design and for designers to establish some fundamentals in software design to really understand the capabilities and functions that can happen.