Ad1. In my opinion it's the variety of problems an engineer has solved that matters. There are plenty of crud developers that are helpless whenever a more complex problem occurs, even though they did hundreds of crud pages in their life.
This applies only if they’re learning. Learning devs who do 100s of CRUD pages will have a DSL and metaprogramming toolkit by the time they’re done. Those who don’t learn will do the same thing, like an artist making 100 copies of their own first painting, each copy more faithful than the last. Better to make a 100 versions of the same subject, each one better than the last.