Interesting questions. A SAS program is made up of SAS language statements also called SAS code. So you could argue that a SAS programmer directly writes SAS programs by typing in SAS code him or herself. A SAS program or group of programs can also be considered a SAS application.
On the other hand there are other ways of developing SAS applications. For example EG projects, DI Studio projects, Dataflux projects, SAS VA applications, Enterprise Miner. Many of these applications generate SAS code behind the scenes but some do not. So a SAS developer could be anyone building SAS applications with any of these non-programming interfaces.
I would argue that SAS developer is a more general term that covers all of the non-programming development tools like those mentioned but also development by writing SAS programs. SAS programmer is arguably a more restrictive term covering those who write code directly. But many SAS users are both SAS developers and programmers so the terms get used interchangeably. I'd be interested in other peoples' opinions.