Proposing fundamental product changes takes solid grasp of what is called "product architecture" in the article, i.e. precise understanding of the concepts involved and the intricacies of their interaction. That means becoming a domain expert, knowing how to work with analytics and maybe even having a basic understanding of backend architecture. Most of the designers I have worked with (admittedly a very small sample) were content with muddled understanding from the point of view of casual user and so mostly drew pretty pictures.
I would agree. It gets difficult sometimes to implement a design from a beautiful looking mockup. Mainly because the design does not take into account most of the software use-cases. Then we go back to the drawing board again.
Which is sort of why I think designer who can implement design (in HTML/CSS/JS or iOS/Android) is ideal, as they are much more likely to have that sort of "product architecture" thought process; and being as closed as possible to the code which means it becomes easier to adapt the design.
Personally like Ryan Singer's approach to designing as he jumps back and fourth between HTML and Photoshop (https://vimeo.com/16814487), the design gets much closer to reality.
> Proposing fundamental product changes takes solid grasp of what is called "product architecture" in the article, i.e. precise understanding of the concepts involved and the intricacies of their interaction.
That's exactly the point. Assuming your product will be used by humans, a designer (a real designer; not a dribbbler pixel-pusher) is way better equipped - in terms of methods for understanding users and context - than a engineer or a manager.