Having first gotten a taste of programming when I was some seven or eight years old, the word I'd initially learned to describe the person doing it was "programmer". It seemed rather appropriate, and, well, still does.
Sometime after that I'd caught wind of "developer" and no, I don't think it was thanks to Steve Ballmer. I've spent much of my professional career calling myself this.
In the last few years, however, "engineer" has come to the forefront. As a result, I've now got the impression that we've starting taking ourselves too seriously, guilty as I may be of using it as well.
I've now gone full circle back to "programmer". It honestly just seems the most accurate.
I associate "developer" with construction and "engineer" with building physical things pretty heavily. I realize this is probably not be universal at all, but I find "programmer" to be the one I can explain best.
Since I'm most definitely not a lexicographer, I'll just go with that. Maybe I'll also emphasize the things I actually know, like Python, just to be