I always just assumed 'engineer' was an Americanization of the word 'programmer'/'developer'. Maybe that's just my British perspective. It's also down to my belief in some of the principles in the OP. I'd never heard 'software engineer' used outside of an academic discipline, until I got in to startups and listened to lots of US tech podcasts and read lots of US tech blogs.