Despite being called an "engineer" a lot in recent years, it always feels icky because of what you just said here about it being a protected title in other industries. Not quite imposter syndrome - just feels like the wrong word for our job. It at least leaves out the linguistic/creative aspect of programming, and the execution/quality aspect of putting it all together.
It's more like digital construction: Programming is more like the construction project, and less like the AutoCAD "design" piece that engineers work on. The AutoCAD piece has more in common with product design than programming.
If anything, designers should be "engineers" and "eng. directors", and programmers should be "technicians" and "technical directors". They engineer products, with deliverables being design documents. And the techs implement it with the deliverable being the technology itself.