Estou lendo o artigo da CNN sobre os empregos mais bem pagos da América. Um arquiteto de software está listado como # 1 . Um engenheiro de software listado como nº 9 . E um desenvolvedor de software (programador) está listado em # 35 . Eu acho que é válido substituir cientista da computação por programador, certo?
Antes disso, eu sempre via "Engenheiros de software" como o título para programadores experientes e líderes de equipe. Mas onde, então, um "arquiteto de software" se encaixa e o que exatamente eles fazem? Eu li as descrições da CNN, mas elas realmente não me satisfazem, portanto, estou assumindo que posso obter descrições mais completas e experientes da incrível base de usuários aqui.
Agradecemos antecipadamente a todas e quaisquer respostas recebidas.
fonte
Respostas:
Aviso : Seguem-se evidências anedóticas ....
Na minha experiência, pelo menos aqui no mercado australiano - os termos Programador, Desenvolvedor de Software e Engenheiro de Software são mais ou menos intercambiáveis (eu mantive os três por fazer exatamente o mesmo trabalho real).
O "Diretor de engenharia de software" descrito no seu link CNN não é o mesmo que "Engenheiro de software". É realmente mais como uma função de gerente de projeto técnico de alto nível. Esse tipo de pessoa não programava muito, se é que realmente. Esse papel tem pouco a ver com o seu típico "Engenheiro de Software" - que geralmente é apenas um título glorificado para um programador intermediário a sênior.
O "arquiteto de software" descrito no link soa essencialmente como um líder de equipe de alto nível, do tipo que projeta a estrutura geral de um sistema de software e, em seguida, provavelmente extrai parte do trabalho pesado para programadores mais jovens. Esse é o tipo de pessoa que lidera um projeto e provavelmente se reporta ao "Diretor de engenharia de software" - em uma grande empresa onde muitas equipes escrevem vários produtos, especialmente quando é necessária a integração entre eles.
Versão TL; DR :
US $ 0,02
fonte
Eu aprendi assim:
fonte
Aqui no Grande Estado do Texas, muitas empresas tendem a se esquivar do termo 'Engenheiro de Software', porque no Texas licenciamos engenheiros e, de fato, existe algo como Engenheiro Profissional 'Selado', Software ( http: // www .tbpe.state.tx.us / eng_req.htm ).
Eu nunca conheci um, nem alguém que eu conheça. É claro que a guilda dos engenheiros gostaria muito de restringir a concorrência exigindo licenças para escrever 'olá mundo', mas isso ainda não aconteceu.
'Desenvolvedor de software' é mais comumente usado para uma pessoa cujo trabalho principal é escrever software.
As empresas também têm um tempo um pouco mais fácil para lidar com problemas de visto para 'Desenvolvedores de software' em vez de 'Engenheiros de software'.
Eu só trabalhei em startups nos últimos 15 anos, por isso não estou acostumado a vários cargos bem diferenciados, mas, em geral, um 'Architect' de software é um desenvolvedor sênior que é bom em apresentar o 'panorama geral' 'design de um projeto de software. Todo arquiteto que eu conheci passa muito tempo escrevendo código, assim como todos os outros, especialmente depois que o design principal é acordado.
fonte