Making nails out of sheet aluminum is engineering. It's not very pretty, doesn't require much mechanical knowledge and is wholly unimpressive, but it's still solidly an engineering-based effort.
I'd wager most people would call certain individuals like Dennis Ritchie and John Carmack true software engineers. In a reductive sense, writing a makefile for someone else's project or scratching an itch with a Python script is the nail-making of the software world. "Anyone" can do it, but it shouldn't be treated as a lesser form of engineering just because it's not elaborate or pretty.
What you say is congruent with the hypothesis of how the term came to be used.
The hypothesis is that the activity of programming digital devices has a stratification of status based on the level of abstraction it uses (higher level design aspects deemed more important than writing the code).
At higher level of abstraction (thinking about the design of a programming language or an operating system) the task may resemble true engineering (though most actual engineers probably never design new types of buildings or bridges).
But in order not create tension the title is propagated to all programmers.
I agree with you there is fundamental unity in the practice. Before one can abstract nail making one must make at least a few nails. But I was really curious about the growing using of the label "engineer" as it seems to play precisely on these perceptions of importance and status.