Is that the engineer thinks of all code as part of a larger system.
And understands the constraints that a piece of code imposes on that system.
As well as the ways that a piece of code can be mis-used.
At least, that's the way I see the difference.
What I don't understand is why anyone would want to be a programmer.
Or why any development organization would hire one.