Early in my career I had this illusion that working only with senior devs would make everything better. But the first time this happened was not what I had expected. Every single bit of grunt work was engineered away. In theory that sounds like it might be nice, but rather than write a little repetitive but clear code, everything got a processor or an engine or something, and with some generic computer science name instead of using nouns and verbs from the domain. To figure out what a piece of code did, even generically, you had to decipher it to know what.
All of the code did something but none of the code said anything. It was horrible.
I very quickly embraced the notion that software wants a mix of developers of different skill levels, so that any task that must be done can find an author who will remain engaged, and not have to create baroque code to get themselves to do the work.