Bom pessoal, então bora falar um pouco sobre dimensões arquiteturais. Todas as vezes que a gente olhar para um software, nós temos que ver o ponto de vista arquitetural desse software, obviamente. O grande ponto que a gente tem que pensar é que normalmente todos os arquitetos estão ali muito focados em componentes, acoplamento, como que isso se relaciona e tudo mais porém existem algumas dimensões que você tem que fazer você tem que ter um olhar um pouco mais claro sobre algumas visões legal ea gente chama isso normalmente de arquitetura multidimensional o que significa você vai pegar sua arquitetura e vai olhar essa arquitetura por um determinado ponto de vista legal como a gente faz isso quais são essas dimensões as dimensões elas podem ser as mais variadas possíveis porém eu vou colocar aqui algumas que são importantes você sempre olhar primeira dimensão é a parte técnica quando nós estamos trabalhando na parte técnica que nesse nosso caso é tecnologia framework acoplamento né como que esses componentes eles vão se relacionar como que eu vou conseguir testar como que o software ele vai se comportar de acordo com as abstrações que eu vou fazer. Essa é a visão que mais claramente a gente acaba olhando, diretamente ou indiretamente, ou apenas por feeling e etc. Mas o grande ponto aqui é que essas dimensões que eu quero falar aqui para você, você tem que olhar de forma intencional. Toda vez que você vai trabalhar com a arquitetura de software a diferença de você arquitetar um software ea diferença de você já sair fazendo esse software é a intenção né porque porque toda vez que eu desenvolvo um software sem pensar em arquitetura esse software ele vai ter arquitetura mas não significa que esse software vai ter uma boa arquitetura quando você olha de forma intencional significa que você vai olhar pelas diversas dimensões pelos diversos pontos de vista arquitetural para ver se isso está fazendo sentido obviamente essa visão técnica normalmente a gente acaba fazendo mas às vezes a gente esquece em pensar direito como que vai ser a arquitetura em relação a dados. Hoje em dia, a gente tem uma moda danada, né? Vamos isolar o nosso domínio e depois a gente vê como que a gente persiste os dados. Opa, eu tenho um repositório e aí o repositório não interessa como que esses dados eles vão ser persistidos etc etc porém galera a coisa ela não pode ser julgada de uma forma tão simplista muitas vezes a forma de como você vai modelar os dados é um dos pontos principais e um dos principais diferenciais que você vai ter ali durante a sua arquitetura e é por isso que é extremamente importante você tem um ótimo repertório nas mais diversas visões pra você conseguir tomar a decisão mais acertado quando estou falando em arquitetura dimensional olhando para a parte de dados eu estou querendo dizer como que os dados vão trafegar dentro do meu sistema aonde os meus dados vão ser armazenados em qual formato esses dados vão ser armazenados como que esses dados eventualmente eles vão ser sincronizados às vezes eu posso trabalhar de uma forma assíncrona às vezes eu preciso do mesmo dado né mas no formato diferente pra que eu consiga ter mais eficiência na hora que eu for trabalhar vou dar um exemplo muito claro aqui muitas vezes você tem que ter três tipos de bancos de dados dentro do seu sistema você precisa de um banco de dados relacional para você fazer as suas consultas você tem índice conseguir trabalhar de dados relacional para você fazer as suas consultas você tem isso conseguir trabalhar de uma forma muito fácil você ter atomicidade você trabalhar com a isolamento não é você ter os pontos do sd ali por outro lado muitas vezes você precisa também tem uma forma de conseguir fazer buscas mais rapidamente então você vai ter que ter ali um banco de dados, um Elasticsearch da vida, você consegue fazer buscas, você consegue gerar o seu esquema ali, você consegue, por exemplo, falar em qual linguagem aquele dado está sendo gravado, porque na hora que você vai buscar, ele consegue ter inteligência baseada na língua que está sendo trabalhado. Por outro lado, muitas vezes os dados, as pessoas, acabam se relacionando. E essas relações são feitas através de nós. E esses nós vão gerar um grafo ali para a gente. Então perceba que a gente está falando do mesmo tipo de dado mas de formas diferentes então quanto mais você começar a entender sobre banco de dados quanto mais você entender sobre os tipos de banco de dados se conosco banco de dados grafos documentos bancos de dados de chave valor então esses tipos de coisas são extremamente importantes na hora que você vai trabalhar com modelagem de dados então perceba que apesar de nós tentarmos isolar domínio nós tentarmos isolar os componentes da forma mais fácil muitas vezes de acordo com o tipo de sistema a partir de dados é uma das partes mais importantes então não adianta a gente querer separar totalmente as coisas o sistema ele tem que ser olhado de uma forma holística por outro lado pra você fazer isso você tem que tomar visões mais intencionais legal o que mais quais mais visões que a gente tem na hora que a gente vai trabalhar de uma forma mais multidimensional? A parte de segurança. Fala a verdade, qual foi a última vez que você olhou para a sua arquitetura e você pensou na parte de segurança? Galera, nós devs, a gente ficou muito, a gente ficou, vamos dizer assim, bem mal acostumados com os nossos frameworks. Por quê? Ah, porque o meu framework já combate SQL Injection. A parte de templates dele já evita eu trabalhar com XSS. Ah, eu vou trabalhar com o WAF, o Web Firewalls, para conseguir me ajudar. Eu tenho a WAF da amazon da cloud flex né eu tenho seguranças contra bot mas o grande ponto aí no meio dessa história como que esse software vai se comunicar quais softwares vão se comunicar com ele como eu consigo isolar esse software na rede para que a comunicação seja apenas com quem eu quero né a como é que vai funcionar você vai ter rate limit você vai ter blacklist que você vai trabalhar como que você evita man in the middle para pegar essa informação você vai trabalhar com multa o tls né você vai ter uma série se mexe para você controlar que vai ter um próximo na ponta ali do seu software ou os dados que você tem e está gerando de telemetria eles estão ofuscados na parte sensível para evitar vazamento de dados de segurança dados que são a sensíveis aparecer num blog por exemplo do na parte de observabilidade então perceba que a gente tem muitas questões, além do SQL Injection, do XSS e etc. A gente tem pontos ali que nós temos que ter muito cuidado. Qual é o formato de log que eu vou trazer? Quais os tipos de dados que vão vir no meu log? Quais tipos de dados eu vou ofuscar? Esses tipos de informação vão ser extremamente importantes. Então olha só como é importante esse tipo de coisa. Esses tipos de informação vão ser extremamente importantes. Então, olha só como é importante esse tipo de coisa. E a parte operacional. Como que o meu software vai operar? Como que ele vai ser feito o deploy? Quais métricas eu tenho que olhar? Como que esse software vai ser observado? Quais são os alarmes que eu vou trazer nesse software pra eu conseguir monitorar né como que vão ser as regras de comitê de deploy como que vai ser o meu pipeline de CI como que vai ser o meu pipeline de CD né quais são os tipos de testes que eu tenho que rodar eu vou colocar uma ferramenta de análise estática de código verificação de vulnerabilidade eu vou fazer verificação da minha imagem do docker para ver se está tudo ok né então todas essas situações fazem diferença como eu vou organizar caso tenha algum problema como eu vou fazer o robert quais são os tipos de deployment que eu vou fazer eu vou ter de ploi blue green eu vou ter um de ploi canary né eu vou trabalhar com feature retuggle então perceba a quantidade de coisas que tem pra você pensar em operação do dia a dia da sua aplicação mas muitas vezes nós arquitetos o que a gente acaba fazendo olhando para componentes olhando pra classes olhando como eles se comunicam mas a gente acaba não pensando nesses aspectos. Então, a partir de agora, eu quero que você pense, escreva, anote esses exemplos que eu acabei dando aqui para você, porque vai fazer toda a diferença. Um grande abraço e é isso aí.