I hate very little in life but I can confidently say I hate “DRYing out code” because it’s _always_ used by developers who believe the repetitiveness of code dictate its quality. I have never seen a good commit for “DRYing out code” — in fact, that concept is usually a big red flag.
I’m quite attracted to writing “good” code — in that I think about theory and principles a lot — and “DRY” is not part of my vocabulary. I very much agree with your point that over-engineering is a problem but DRY is not related to that.