Qual a diferença entre um engenheiro de software e um analista de sistemas?