Having once been a platonist about this sort of stuff, I've rarely seen heavy code architecture work out well in practice (not so with system architecture.)
I'm reminded of the various Evolution Of a Programmer jokes which end with the master programmer writing the same code as the beginner programmer.
I've always read into those Evolution of a Programmer jokes that what the master learned through their evolution is the right and wrong time for all the complicated stuff they did in the earlier phases, and that anything simple enough to form the basis of a joke is merely the wrong time.
I'm reminded of the various Evolution Of a Programmer jokes which end with the master programmer writing the same code as the beginner programmer.