Earlier quoted context omitted.
I seriously wonder about the proportion of architects who ever mixed any concrete themselves in their lives. Seriously, almost no developer would be able to write a compiler today. The same way I wouldn't be able to build a micro-processor worth anything. You wouldn't expect any compiler knowledge from most web (back or front) developers, the same way you wouldn't expect much GUI or globally distributed consistent da…
I'm software developer (backend, fronted, cloud, embedded, etc), but it's often very helpful to know how hardware works, how processor works, how kernel works, how compiler works, how network works, and so on, because it's allow me to make my abstraction at top of all these layers to work much more efficient. It's not expected that I will be expert in all that, but it's expected that I will know basics, so I will not…
On the mobile part, most of the clients have pretty much no idea what a processor really is, or how networks work. Hell, I have to explain to them that if they want to build this kittens social network, they're going to need a back-end and that no, it doesn't matter to the mobile apps what language their back-end is written in (and vice-versa).
For most of what these people ask, all you need to know are the basics of Android and iOS's SDKs and how to make API calls. Half the time, their isn't even any networking involved !
I'd be thrilled to work in an environment where this kind of knowledge matters. But like most people I'm stuck working with some people who'll tell you that they don't want to be software developers; it's just a means to an end to them (which is fine. Just don't use that as a shoddy excuse for doing crap), refactoring codebases built by some kids who don't have any software architecture knowledge and don't see the problem in their network layers popping modals and alerts, wondering how on earth a view could end up being a singleton (and no, "I was somehow convinced I needed to access it and change it's properties from this class over there" is not a satisfactory answer) or spend half my day on a single rebase because of some git submodule crap.
So yeah, for most of the people I've had the 'delight' of working with, they are missing so much that no, hardware intricacies, processors inner working, compilers logic and functioning or networking knowledge aren't the critical aspects they're missing.
Heck, I'd be glad if their code was even just readable and had anything resembling an architecture. Or if they didn't turn everything and anything into a singleton whenever they felt like it.
I'm going to stop now. But going back to the architects analogy, if these developers where architects, then most of those I've met can't tell the difference between plumbing and electrical wiring, so I'd be glad if they left the concrete to the craftsmen and at least managed the basics of their jobs' specifics.