It seems the main issue is they lack a system-level mental model. I have found I need to define strict boundaries and interfaces first to get a usable result. You still have to do the architecture work upfront.