Чем отличается программист и инженер-программист?
Все просто! Как такового понятия в официальных названиях специалистов "программист" - нет.
Если высшее образование, то это инженер-программист, а если средне-специальное, то техник-программист.
P.S. Программист - это призвание и стиль жизни:-)
>>регулирует ли законодательство этот момент?
Все регулируется штатным расписанием.