Categorias
Arquitetura Engenharia de Software

O que as empresas esperam de um arquiteto de TI ?

A wikipedia diz que arquitetura significa construção principal, basicamente referenciando ao arquiteto que atua em qualquer situação de arranjo espacial.

No nosso caso é o software que interessa e precisa receber essa “orientação espacial” para ser bem feito.

Vamos ver o que a documentação do RUP fala sobre a arquitetura de software, que é a responsabilidade do arquiteto:

A arquitetura de software abrange:

  • as decisões significativas sobre a organização de um sistema de software
  • a seleção dos elementos estruturais e das interfaces através das quais o sistema é composto em conjunto com o comportamento, como especificado na colaboração entre esses elementos
  • a composição dos elementos estruturais e comportamentais em subsistemas progressivamente maiores
  • o estilo de arquitetura que guia essa organização, esses elementos e suas interfaces, suas colaborações e sua composição

A arquitetura de software não diz respeito apenas a estrutura e comportamento, mas também a uso, funcionalidade, desempenho, flexibilidade, reutilização, abrangência, restrições tecnológicas e econômicas, trocas e estética. ”

Do ponto de vista do desenvolvedor, o arquiteto é a pessoa :

  • com muita experiência nas tecnologias utilizadas pela empresa;
  • que tem a visão geral de todas as implementações de aplicações da empresa (não confunda isso com saber todas as regras de negócio);
  • que domina pelo menos uma ferramenta de desenvolvimento;
  • que sabe que o banco de dados é um repositório de informação, e não uma camada de regras de negócio, mas que em alguns casos é interessante que isso exista;
  • que conhece bem os padrões de desenvolvimento e sabe que cada caso é um caso, não existe bala de prata;
  • que domina as principais linguagens de programação utilizadas pela empresa;
  • que procura tirar o melhor proveito do software/metodologia que a empresa tem, ao invés de ficar reclamando do que a empresa não tem;
  • que conversa com o desenvolvedor e sugere/obriga o uso de determinada arquitetura, sempre com justificativas técnicas;
  • que sempre está atualizado com as novas tendências, mesmo que ainda não tenham presença significativa no mercado.


Pois bem, mas o desenvolvedor não é o dono da empresa e muito menos quem participa do processo de seleção do arquiteto, portanto a realidade é outra!

Em muitas empresas que tenho conhecimento por colegas desenvolvedores, esse papel não é nada disso que eles esperam, na maioria dos casos os arquitetos são pessoas:

  • com nível superior;
  • com pouca ou nenhuma experiência em desenvolvimento;
  • que conhecem UML;
  • que dominam alguma ferramenta de UML;

E por que isso acontece? Por que na realidade as empresas esperam um perfil diferente para o arquiteto. Elas ainda acham que informática é como a engenharia civil, onde um arquiteto orienta um mestre de obra sem ter construído nenhuma obra antes.
Ou seja, o arquiteto (papel do chefe) manda o analista (o subordinado, o pião) fazer o que ele acha correto.

Ah, mas o arquiteto tem curso superior e o analista não! Essa frase eu já escutei e tenho pena de quem acredita que na faculdade se ensina tudo e que alguém sem diploma possa fazer um excelente trabalho. Acredito que a maioria das pessoas competentes que eu conheço (analistas, DBAs, desenvolvedores) fizeram faculdade de outro curso ou começaram alguma e desistiram para cair no mercado.

O Carlos (não, ele não tem link para o nome dele, ele não tem blog, site, nada, segundo suas próprias palavras é um indigente digital) ,que sempre fala de temas interessantes (esse post mesmo surgiu de uma conversa de almoço no trabalho), tem umas histórias curiosas sobre carreira acadêmica: outro dia voltando a pé do trabalho pela Avenida Paulista ele percebe a poucos metros de distância uma fisionomia familiar de um rapaz entregando folha de papel de propaganda para as pessoas que passavam pela rua… depois de pensar um pouco ele lembrou: era o cara que estudou no colégio com ele e era o aluno com as maiores notas da turma! Que coisa não, como nada na vida realmente é previsível…

Bom, voltando ao assunto principal, na verdade o que as empresas esperam são “documentadores seniors” que tem uma tamanha autoridade, e em algumas vezes arrogância para definir padrões que quase sempre não conhecem o suficiente.

Alguns dizem que os arquitetos sabem mexer melhor no powerpoint do que nas IDEs de desenvolvimento, mas felizmente existem exceções.

A área de informática cresce muito rápido e os arquitetos não tem uma posição confortável de deixar de acompanhar como as coisas evoluem e o que ele poderia adotar para melhorar o dia a dia do desenvolvedor. Eles precisam sempre tentar melhorar visando o crescimento da empresa.

O escritor francês Jean Giraudoux tem uma citação interessante que resume tudo isso: “Only the mediocre are always at their best“.

Fernando Boaglio, para a comunidade. =)

Por Fernando Boaglio