This is exactly how I write code. I never engineer anything until I have to. I don't try to get rid of code duplication until it works. And I try to be as "least clever" as possible.
And yet somehow in the enterprise software you always find 'EntityModelFactoryProvider' or 'BusinessRelationValidationService'
I'm the same way. Underengineering is so much easier to fix than overengineering.