O que faz um Arquiteto de Software?

Blog BHS Blog BHS 21 DE FEVEREIRO DE 2019

No último dia 13, aconteceu um meetup, organizado pela equipe DEVtalks PUC Minas, no Auditório Liberdade, em Belo Horizonte. Um dos temas foi “Qual é papel do Arquiteto de Software atualmente?” discutido por Rogério Baldini, Amanda Pinto, Marcelo Umberto e Alex Simonetti. O assunto faz questionar qual caminho trilhar ou o que fazer para se tornar Arquiteto dentro de uma empresa.

Nas eras que programar em COBOL e/ou Clipper eram tendências e havia a preocupação de não escrever uma linha de código muito extensa ou um arquivo de algoritmo não muito pesado, pois gravava-se o sistema em um disquete (ou vários), os profissionais de TI eram quase operários industriais, tinham cargos e funções específicas e bem definidas. Não existia a necessidade de fazerem parte de alguma outra área ou aprender algo novo em um curto espaço de tempo. A demanda de construção de qualquer sistema era baixa, seu método de desenvolvimento envolvia o modelo cascata (sequencial) e o termo “tempo é dinheiro” era ainda pouco conhecido e, na maioria das vezes, despendia-se mais tempo e menor era o ROI (traduzido do inglês “retorno sobre o investimento”).

Nesse contexto, exercer a função de arquiteto de software resumia-se em analisar os requisitos levantados por um analista de negócios/sistemas, modelar diagramas para facilitar o entendimento do negócio e modelar algum tipo de arquitetura para o sistema como um todo e iniciar o desenvolvimento.

A grande questão é: em tempos onde empregar metodologias ágeis é algo que deve fazer parte da cultura de uma empresa e a entrega de valor deve ser constante e em um curto período de tempo, é suficiente executar apenas o que o cargo/função descreve? A resposta para essa pergunta é não. E vou explicar o motivo mais adiante.

Numa época em que deve-se errar menos ou errar rápido e solucionar o erro em um tempo ainda menor, surge a necessidade de obter profissionais proativos, multidisciplinares e, muitas vezes, auto ditadas. Isso se dá pois o Arquiteto, no caso, precisa tomar decisões cada vez mais pontuais e impactantes. E, para evitar falhas, é fundamental entender o negócio e contextualizá-lo com questões técnicas.

Com isso, é papel do Arquiteto fazer parte da interface com o cliente, para poder compreender mais a fundo sobre as necessidades do mesmo, questionando situações pontuais de negócio que impactam na construção do sistema, constituindo, também, participação na área de segurança e testes de qualidade, tendo que explorar qual é a melhor forma de realizá-lo e no setor financeiro, levantando custos que poderão gerar e realizar benchmarks (como qual linguagem de programação utilizar). Além de possuir um vasto conhecimento sobre tecnologias, como linguagens de programação e/ou serviços em nuvem, para formular uma arquitetura e auxiliar na construção da mesma.

O que faz um bom Arquiteto de Software, então?

O papel do Arquiteto de Software vai muito além de ter conhecimento técnico excelente. É preciso saber falar em público e, consequentemente, conversar com o cliente, manter uma boa relação, compreender suas necessidades, imaginar cenários de segurança e em como irá realizar os testes de qualidade do software. Levantar custos financeiros para utilizar uma determinada tecnologia e/ou plataforma e, muitas vezes, tomar decisões como “Utilizar uma linguagem OpenSource ou gastar 1 milhão de reais utilizando outra” e “O que será o meu ROI”.

Acredita-se que tais habilidades são adquiridas com o passar do tempo, com os anos de trabalho conquistando experiência, onde gradativamente é obtido o conhecimento mais sólido em cada área apresentada. Além de ter muita dedicação e estudo.

 

Autor:

Alex Alves 

Equipe de Desenvolvimento na Localiza.

Bacharel em Ciência da Computação e MBA em Arquitetura de Software. Desenvolvedor há 4 anos.

Postado em sua página do Medium, no dia 13/02/19.

Anterior
Próximo
Infraestrutura 19 DE FEVEREIRO DE 2019

Quatro dicas para migrar seu servidor ERP para nuvem

Infraestrutura 27 DE FEVEREIRO DE 2019

Máquinas Virtuais do Azure ganham restauração instantânea