I think another difference is Engineering has a history of rationality and mathematics behinds it. In my opinion computer programming (in most cases) is something like novel writing and includes many creative/non-reproducible problem solving works (art?).
I prefer to not refer myself as engineer because of that hidden semantic assumptions that comes with the word. Instead because of popularity of rational thinking many software developers like to categorize themselves as engineers. (more about this: Object Thinking by David West)
reply