Engelmann Labs

Guilherme Engelmann Moraes Dias

Software Architect

Desenho sistemas que escalam, da nuvem AWS à inteligência artificial aplicada com Claude.

Projetos publicados

Certificações

O que faz um arquiteto de software?

O arquiteto de software é quem transforma objetivos de negócio em decisões técnicas sustentáveis. Define a estrutura de um sistema, como suas partes se comunicam, onde ele roda e quais trade-offs valem a pena, para que o produto cresça sem virar um emaranhado difícil de manter.

Responsabilidades

  • Desenhar a solução

    Traduz requisitos funcionais e não funcionais em uma arquitetura clara: componentes, integrações, dados e fronteiras de cada serviço.

  • Decidir e documentar

    Escolhe tecnologias, padrões e provedores com base em custo, risco e prazo, registrando o porquê de cada escolha em ADRs.

  • Garantir os atributos de qualidade

    Segurança, desempenho, disponibilidade, observabilidade e custo previsível, guiados pelo AWS Well-Architected Framework.

  • Orientar o time

    Define guias, revisa código e desenhos técnicos, faz mentoria e mantém a coerência técnica entre squads.

  • Conectar negócio e tecnologia

    Conversa com produto, diretoria e clientes, traduzindo restrições técnicas em impacto de negócio e vice-versa.

  • Evoluir sem reescrever

    Planeja a evolução da plataforma, reduz dívida técnica e conduz migrações sem interromper a operação.

Exemplo para uma Pizzaria · pedidos no WhatsApp com IA

01Desenhar a solução

O pedido de pizza sai do WhatsApp, passa pela API e pelo agente de IA na AWS, é gravado no banco de pedidos e chega à cozinha.

Competências

Arquitetura de software

  • Microsserviços
  • Event-driven
  • Domain-Driven Design
  • APIs REST e GraphQL
  • Mensageria e filas
  • Clean Architecture
  • Escalabilidade e resiliência

Engenharia e operação

  • CI/CD e DevOps
  • Observabilidade
  • Testes automatizados
  • Segurança de aplicações
  • Modelagem de dados

Pessoas e negócio

  • Comunicação técnica
  • ADRs e documentação
  • Mentoria
  • Análise de trade-offs
  • Levantamento de requisitos

Um dia na vida do arquiteto de software

  1. Manhã

    Alinhamento com produto e times: prioridades, riscos e bloqueios técnicos do dia.

  2. Fim da manhã

    Desenho de soluções: diagramas, provas de conceito e estimativas de custo para as próximas features.

  3. Tarde

    Revisão de código e de arquitetura, pareamento com devs e apoio em incidentes ou gargalos de desempenho.

  4. Fim da tarde

    Registro de decisões em ADRs, análise de métricas e custos na nuvem e estudo de novas tecnologias e modelos de IA.