Como se transformar em um arquiteto de software? V2

images

Estes dias atras me perguntaram quais seriam as informações mais básicas para se tornar um arquiteto de software. Segue ai a resposta bem resumida:

1)Modelo C4

Para o plano arquitetural conhecido como “blueprint” de um projeto, se faz necessário projetar a solução usando diagramas. Esqueça a UML! Eu uso modelo chamado de “C4”. Aprenda no livro Software Architecture for Developers.

2)Projeto e Design DDD

Para o design de camadas e projeto oop, se faz necessário uma abordagem 100% OO. Eu uso uma técnica chamada a de “Domain Driven Design”. Aprenda no livro Domain-Driven Design: Atacando as Complexidades no Coração do Software.

3)Desenvolvimento TDD

Para o desenvolvimento, se faz necessário usar uma abordagem de construção de software. Eu uso uma técnica chamada de “Test Driven Design”. Aprenda no livro Test-Driven Development – Teste e Design no Mundo Real.

4)Design Emergente

Para criação e evolução da estrutura do produto em desenvolvimento, se faz necessário o uso de alguma abordagem. Eu uso uma chama de”Design Emergent”. Aprenda no livro Emergent Design: The Evolutionary Nature of Professional Software Development.

5)Linguagem Dinâmica

Para programação oo, use uma linguagem de programação dinâmica no qual se possa usufruir de técnicas como metaprogramming e duck type. Eu uso Groovy, aprenda no livro Programming Groovy 2: Dynamic Productivity for the Java Developer. Um arquiteto nos dias atuais deve saber quando dosar estruturas com Design By Contract versus Design By Capabilities.

Eu me coloco a total disposição para ajudar e resolver duvidas de qualquer um interessado em trilhar esse caminho. Se você precisar de uma ajuda extra e tem interesse em investir em cursos, nossa grade de arquitetura cobre a maioria desses tópicos AQT M1, M2 e M3. Bons estudos!!!.

“Mas, em todas estas coisas somos mais que vencedores, por meio daquele que nos amou.” Romanos 8:37