你的数据随意性还是比较大的:
create trigger trg_update_tbl on tbl 
for update 
as 
begin 
   if update(职位) 
       update a set a.项目经理=b.姓名 from tbl a join inserted on a.部门=b.部门 and a.职位='程序员' and b.职位='项目经理'