Programmer - uses a programming language; may well not be in an overall software shop though.
Software developer - contributes to creating software where the software is an end product goal.
Software engineer - has a design role to some degree, not just code monkey.
Coder - completely ambiguous term shared by multiple unrelated disciplines, eg. medical records keeping.
@JordiGH What I mean is interior software vs. exterior where exterior can in a large company mean also other divisions of the company. If I wrote a script for bob in accounting, that's fine, that's one thing; if I wrote an accounting software package for the accounting department that's borderline; if I wrote accounting software that we license to five other clients, that's exterior.
@kimreece And your hat would change accordingly? Programmer if you're doing it for Bob, software developer if you're licensing it to five clients?
@JordiGH This gets really messy with FOSS because, as we get used to copying in snippets off StackOverflow in leue of documentation, that interior slipshod quality gets inserted in places it was never ready for. Not that there isn't a lot of good stuff on StackOverflow, but it's a messy situation.
The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!