Os 7 tipos de Arquitetos de Sistemas de Software — Parte 2

José Roberto Araújo
7 min readMar 27, 2020

--

Que tipo de Arquiteto de Sistemas de Software você está assumindo neste momento? Ou você gostaria de assumir? Você conhece as nuances de cada um dessas variações?

Na Parte 1 desse post, falamos das 3 primeiras variações do papel de um Arquiteto, como eram suas interações dentro de uma organização, quais eram suas responsabilidades e qual o nível de conhecimento e exigência era demandado de cada uma dessas posições. Hoje, vamos abordar as 4 últimas variações, conforme a lista abaixo:

  • Arquiteto Corporativo (Enterprise Architect)
  • Arquiteto de Soluções (Solution Architect)
  • Arquiteto de Software (Software Architect)
  • Arquiteto de Dados & Informação (Data/Information Architect)
  • Arquiteto de Infraestrutura (Infrastructure Architect)
  • Arquiteto de Segurança (Information Security Architect)
  • Arquiteto de plataforma em Nuvem (Cloud Architect)

Arquiteto de Dados & Informação (Data Architect or Information Architect)

Esta é uma variação bastante interessante e que, atualmente, vem sendo bem cobiçada dentro da área de dados. Trabalhar com os dados de uma organização, não se trata apenas de saber modelar bem uma base de dados Relacional ou Não-Relacional, trata-se de saber armazenar, organizar, catalogar, inferir informações dos dados, trabalhar comportamentos por perfil e a lista não para de crescer. Então, você já deve ter percebido que ser um Arquiteto de Dados, não é algo tão trivial assim. Ou seja, o seu papel dentro de uma organização é garantir que os clientes que acessam a plataforma sistêmica de uma empresa, tenham acesso aos dados no lugar correto e no tempo correto.

A modelagem dos dados não simplesmente saber relacionar tabelas e entender planos de execução, mas criar desenhos de modelos e decidir como esses dados serão armazenados e organizados para atender aos requisitos da gestão da informação da empresa. Um dos requisitos, trata-se de um dos atributos de qualidade, chamado: Segurança. Segurança é uma das mais importantes responsabilidades que um Arquiteto de Dados DEVE ter em mente, além de trabalhar estratégias de backup, arquivamento de dados, e recuperação de dados em caso de desastres.

As vezes, pode parecer estranho você encontrar vagas de Arquiteto da Informação ou Arquiteto de Dados. Ainda que estes papeis possam parecer semelhantes, há uma pequena diferença que os diferenciam um do outro.

Ao passo que o Arquiteto de Dados tem seu foco concentrado em gerir como será a modelagem da estrutura de dados dentro da empresa e como será a gestão dos dados e das base de dados, o Arquiteto da Informação tem seu foco direcionado aos usuários da aplicação, ou seja, sua preocupação estará em como a informação será gerada e, o mais importante, como será usada e apresentada para o usuário final do sistema.

Assim sendo, o Arquiteto de Dados mantem seu foco em como garantir que os dados estão sendo armazenados corretamente, garantindo que esses dados não serão voláteis dentro do tempo de vida de software. Já o Arquiteto da Informação mantem seu foco em como usar os dados gerados para e oferecer uma melhor experiência de usuário para o cliente da aplicação. Sendo assim a interação com um UX Designer é essencial para que o resultado desse trabalho seja um sucesso.

Arquiteto de Infraestrutura (Infrastructure Architect)

Esse papel é, normalmente, o mais “ingrato”, vamos classifica-lo assim! Porquê? Bem, acho que você já deve ter ouvido algumas vezes a frase: “Você precisa abrir um chamado para a área de infraestrutura, solicitando o novo servidor para o novo projeto!”. Mas quem é o responsável por garantir todos os padrões da infraestrutura da organização.

O papel de um Arquiteto de Infraestrutura é entender as necessidades, novamente, da companhia e do negócio em questão e, pensando nesse requisitos precisa desenhar uma arquitetura que atenda essas necessidades, garantindo o fornecimento de servidores, hardware, rede, sistemas operacionais, armazenamento (storages), escalabilidade desses recursos.

Um Arquiteto de Infraestrutura, estará envolvido nas definições dos componentes abaixo:

  • Servidores físicos e virtuais, atualmente estamos adicionando neste âmbito: Containers e Gerenciadores de containers, com a chegada do Kubernetes;
  • Rede e elementos que compõe a rede da organização: Switches, roteadores, firewalls, cabeamento, equipamento ou software de Balanceamento de Carga;
  • Sistemas de armazenamento (Storages), tais como: SAN ou NAS
  • Ferramentas que auxiliem o Monitoramento do uso de todos appliances que estão sendo utilizados dentro da empresa

Dado tudo o que apresentamos até este ponto, é fácil perceber que precisa existe uma interação e um trabalho em conjunto de todos os profissionais que assumiram o papel de Arquiteto, ainda que esse profissional acumule dois ou mais desses papeis, o foco é buscar o valor e sucesso da entrega de um Software Corporativo. Sendo assim, um Arquiteto de Infraestrutura precisa garantir que sistemas que já estejam sendo executados em ambiente de produção (legados ou não), continuem funcionando e entregando valor para a empresa. Além de tudo o que foi dito, um Arquiteto de Infraestrutura precisa executar tudo em um ótimo nível de excelência, visto que se algo sair fora do acordado/desenhado, pode custar caro para a operação da empresa.

Para atender às demandas da empresa, eles monitoram e analisam características como carga de trabalho, taxa de transferência, latência, capacidade e redundância, para que um equilíbrio adequado seja alcançado e os níveis de desempenho desejados sejam alcançados.

Arquiteto de Segurança (Security Architect)

Sabe aquela pessoa que chamamos de: O Rapaz da Segurança da Informação? E normalmente é o responsável por enviar algumas e-mails de phishing dentro da empresa, como forma de treinamento das pessoas sobre o perigo desse tipo de ataque? Ou sabe aqueles e-mails que chegam para nós (desenvolvedores), solicitando que não deixemos palavras secretas ou chaves de configurações com dados sensíveis em nossos projetos ou código?

Bem, o papel de um Arquiteto de Segurança é ser responsável por construir toda uma infraestrutura de segurança, implementar softwares de monitoramento, realizar supervisão sobre o que está trafegando de dados tanto ao entrar quanto ao sair da empresa. Ou seja, um profissional sobre esse chapéu (papel), precisa conhecer toda a estrutura dos sistemas organizacionais dessa companhia e como está desenhada e implementada a infraestrutura (feita pelo Arquiteto de Infraestrutura)

Arquitetos de Segurança precisam aplicar testes avaliativos, buscando identificar pontos de vulnerabilidade e avaliar potenciais ameaças que possam existir dentro de uma organização, devendo estar familiarizados com os padrões de segurança, práticas recomendadas e técnicas que podem ser usadas para combater quaisquer ameaças identificadas.

Arquiteto de Nuvem (Cloud Architect)

Atualmente vivemos em uma Era onde os provedores de Nuvem estão ganhando, cada vez mais, espaço dentro das organizações, sejam elas privadas ou públicas. Dada a facilidade de provisionar máquinas virtuais, criar ambientes de redes virtuais, provisionar o escalonamento de servidores de aplicações, instalar, configurar e monitorizar recursos em um ambiente de Nuvem, é bem mais “Simples” (entre aspas, propositalmente) do que fazer isso em um ambiente on-premise. No entanto, é relevante tentar perceber que a transformação digital dentro de uma empresa não é algo tão trivial quanto parece ser. Nesse sentido, começamos a entender que ter um profissional com bastante expertise nesse “novo” tipo de ambiente, está crescendo a cada dia e tornando-se ainda mais comum encontrar oportunidades que buscam esse perfil.

A responsabilidade do papel de Arquiteto de Nuvem é saber selecionar o recurso mais adequado para atender uma demanda, entender os modelos de cobrança e desenhar uma solução que sejam precisas e não resulte em surpresas no cartão de crédito da área financeira da companhia. Precisam ainda, entender quais são os recursos que um provedor de nuvem oferece e que melhor se adequam ao plano de migração de aplicações já existentes e que, rodam em servidores in-house. Precisam entender quais são as diferenças entre os modelos (IaaS, PaaS e SaaS) e como é realizada a cobrança em cada um dos modelos. Precisam aplicar processos para coordenar as etapas de migração e realizar s sustentação de toda a infraestrutura dentro do ambiente de nuvem. Precisam saber utilizar ferramentas de monitoramento sobre o uso e o custo gerado por todos os recursos que foram provisionados e como trabalhar o up-scaling e down-scaling desses recursos de forma automática.

Arquitetos de Nuvem realizam a supervisão sobre os recursos que estão sendo utilizados dentro de um provedor de cloud, no sentido de monitorizar os serviços e gerenciar os deployments de atualizações de cada um deles. A experiência que os arquitetos em nuvem possuem normalmente significa que eles estão envolvidos na negociação de contratos com provedores de serviços em nuvem e na garantia de que os SLAs (acordos de nível de serviço) sejam atendidos.

O Arquiteto de Nuvem precisa ter entendimento segurança, como proteger os dados implementados e, para isso acontecer, ele precisa estar em contato diretamente com um Arquiteto de Segurança, mas caso a função do arquiteto de segurança não exista dentro da organização, o Arquiteto de Nuvem, possivelmente acumulará mais esse papel. Parte do seu trabalho é evangelizar a adoção da nuvem, comunicando os muitos benefícios e influenciar as mudanças de comportamento em relação à adoção da nuvem que acabarão por levar a mudanças culturais.

Conclusão

Com o artigo de hoje, podemos entender que mesmo o papel de Arquiteto, tem segmentações ou especializações e essas especializações são comuns ao que temos hoje, como: Engenheiro Backend, Engenheiro Fronend, Engenheiro de Dados, DBA, Engenheiro de Infraestrutura, e assim por diante. Cada uma dessas áreas, dentro da T.I, podem, dependendo da escala de negócio que a companhia queira alcançar, escalar para o nível de Arquitetura, abrindo possibilidades a esses profissionais alcançarem esse papel.

É certo que, na maioria dos casos, é incomum termos todas essas segmentações dentro dos grupos de Arquitetos, mesmo em grandes companhias. O que é mais comum encontrarmos nas empresas é um Arquiteto assumindo as responsabilidades de outros papeis: Arquiteto de Software, acumulando as responsabilidades do Arquiteto de Soluções e, muitas vezes, também do Arquiteto Corporativo.

Então, porque explicar cada um desses papeis? Bem, eles existem! As responsabilidades e exigências de cada um, também existem e é um Fato. O meu objetivo aqui, foi trazer os esclarecimentos e possibilitar entender como cada um desses papeis interage dentro de uma companhia e quais são as expectativas que são depositadas em cada uma das RESPONSABILIDADES sobre um Arquiteto de Sistemas.

--

--

José Roberto Araújo

I'm a Software Developer focusing on supporting people and companies to build robust, reliable, and complex software. I've been doing this moreover 2 decades.