The argument against is often phrased in such a way that enforcing, or even defining, separate ‘professions’ for individuals in software careers and those professions having differing requirements, is seen as a morally negative stance on its face. As a particularized example, one of the frequent arguments would be that a hierarchical structure would inevitably emerge among people potentially working on the same application. This argument is predicated on this stratification being inherently bad.
I think the push back on separating roles like you propose would be instant and vitriolic. I got slammed hard for saying that a person who had no concern or any interest in how data structures in a given application were implemented should not be hired as a ‘system programming’ dev.
I absolutely think you are correct at the theoretical level, but practical implementation of the idea is almost a non-starter.