So who do you think will be writing the "components" for your magic system, and the infrastructure to make the system executable, designable, testable and usable? We have been progressing to increasingly high level code (and in some cases, as you say, component architectures), but the amount of code being written and maintained continues to grow, not shrink.
If software apps were purely compositional and organized as a hierarchical tree, the low level components would need to be written only once. Once the bottom levels (mostly leaves) of the tree become populated, then all of the higher level apps will be compositions of existing objects. Plug and play. The trick is in the purely compositional part: everything must be compositional from the bottom up.
So the amount of code is growing, and it does more per unit mass, and software engineering skills are increasingly valuable and applicable, and you think this is a trend towards the elimination of code and software engineers? You may want to check your water and food sources for contamination.
I think it will be the elimination of the traditional programmer, because a time is coming when everybody will be a programmer whether they know it or not. Drag'm and drop'm, that sort of thing.