This description on the Internet makes it sound like the engineer play more of a Designer and the programmer plays the role of the Implementer.
Computer programmers write code to create software programs. They turn the program designs created by software developers and engineers into instructions that a computer can follow.