Skip to content
View rodri-oliveira-dev's full-sized avatar
💻
Designing systems, writing code
💻
Designing systems, writing code

Sponsoring

@dotMorten
@nager

Block or report rodri-oliveira-dev

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
rodri-oliveira-dev/README.md

Português | English | Español (Latinoamérica)

RO Architect

Rodrigo de Oliveira

Arquiteto de Software · Sistemas Distribuídos · .NET · Cloud

Software architect working hands-on with .NET, distributed systems, cloud, architecture governance, and open-source developer tooling.

Há mais de 20 anos, trabalho no desenvolvimento e na evolução de sistemas corporativos, com foco em arquitetura de software, integrações e modernização de aplicações. Procuro equilibrar necessidades de negócio, decisões técnicas e a realidade operacional dos sistemas.

Aqui compartilho ferramentas, bibliotecas e laboratórios open source que ajudam a transformar decisões de arquitetura e governança em código, testes e automação.

Links profissionais


Projetos selecionados

Ferramentas, bibliotecas e laboratórios que conectam decisões de arquitetura à implementação e à operação.

Ferramenta de governança arquitetural

Ajuda equipes a manter registros de decisão consistentes e rastreáveis. A CLI em .NET cria, valida e indexa ADRs; análises opcionais de impacto e desvios arquiteturais trabalham com evidências delimitadas, sem substituir o julgamento humano. O estudo de caso detalha decisões e trade-offs.

Biblioteca .NET

Resolve mapeamentos entre objetos .NET e colunas quando as convenções do Dapper não bastam, sem adicionar atributos aos modelos. A evolução da biblioteca combina API fluente, extensibilidade e compatibilidade com aplicações existentes, evidenciando manutenção de APIs públicas e modernização incremental. O estudo de caso discute os limites dessa abstração.

Ferramenta de documentação arquitetural

Reduz a divergência entre código e diagramas ao transformar evidências delimitadas de repositórios .NET em documentação C4/LikeC4 revisável. O fluxo separa observações de hipóteses e exige aplicação explícita, demonstrando análise estática, geração determinística e integração com agentes via MCP.

Laboratório de sistemas distribuídos

Torna decisões sobre consistência eventual, falhas e rastreabilidade reproduzíveis em uma base de serviços distribuídos em .NET. Implementa DDD, integração assíncrona com Kafka e Outbox, testes e runbooks, deixando propostas sem evidência marcadas explicitamente como pendentes.

Biblioteca .NET para integração

Trata falhas, concorrência e duplicidade na entrega de webhooks de saída. IDs estáveis tornam o enfileiramento idempotente, enquanto concessões temporárias e novas tentativas sustentam entrega at-least-once com armazenamento durável fornecido pela aplicação; o destinatário ainda precisa tolerar duplicatas. O estudo de caso examina essas garantias e seus limites.

Ferramenta de análise estática

Identifica padrões de custo e regressões de complexidade antes que cheguem à execução. O analisador Roslyn estima Big-O quando há evidência suficiente, aplica métricas configuráveis no build e na IDE e retorna resultado indeterminado em vez de inferir além do que o código permite.

Outros trabalhos: Repo Control Center, painel de CI, releases, segurança e saúde dos repositórios, e a lista completa de repositórios.


Contribuições open source

Algumas contribuições integradas que representam correção, manutenção e segurança em bases existentes:

  • Ocelot — PR #2420: corrigiu o mapeamento de timeouts do serviço de destino para HTTP 504 conforme a RFC 9110, preservando cancelamento do cliente e comportamento de QoS, com testes unitários e de aceitação.
  • MySqlConnector — PR #1675: removeu a detecção obsoleta do Azure MySQL Single Server, preservando o caminho do AWS RDS Proxy e simplificando a lógica de conexão.
  • OpenCNPJ — PR #75: centralizou downloads externos em um fluxo com timeouts, limites de tamanho, arquivos temporários e limpeza em falhas, acompanhado por testes e validação em CI.

O catálogo completo de contribuições open source mantém os demais Pull Requests e seus estados atualizados automaticamente.

Governança como código

No repositório .github, reúno políticas e automações compartilháveis: padrões de contribuição e segurança, inventário de projetos .NET, verificação de segredos e distribuição controlada de skills para agentes. As mudanças passam por Pull Request e cada repositório mantém autonomia para adotar suas regras.

Como trabalho

Procuro entender o contexto, as dependências e os limites operacionais antes de propor uma solução. Discuto alternativas e trade-offs com os times, registro decisões relevantes em ADRs e acompanho a implementação por meio de testes, observabilidade e automação.

Publicações e conteúdo técnico

Escrevo sobre arquitetura de software, DDD e desenvolvimento .NET, principalmente sobre decisões e problemas encontrados na prática.

Pinned Loading

  1. poc-arquitetura poc-arquitetura Public

    .NET architecture PoC for distributed services with CQRS, Kafka, PostgreSQL, Outbox, DLQ, observability and CI quality gates.

    C# 6

  2. complexity-analyzers complexity-analyzers Public

    Roslyn analyzer, .NET CLI and MCP server for C# complexity analysis. Estimates Big-O, detects costly patterns, measures code metrics, and compares snapshots to identify complexity regressions.

    C# 4

  3. Dapper-FluentMap Dapper-FluentMap Public

    Fluent mapping for Dapper, with conventions, immutable object materialization, analyzers, source generators, DI integration, and Dommel support.

    C# 458 87

  4. Repo2C4 Repo2C4 Public

    Evidence-first .NET tool for inspecting local repositories and building traceable, reviewable C4/LikeC4 architecture documentation.

    C# 3

  5. adr-guard adr-guard Public

    Architecture Decision Records (ADRs) toolkit with .NET CLI, VS Code extension, GitHub Action, MCP server, and architecture governance tools.

    C# 5

  6. ReliableWebhooks ReliableWebhooks Public

    Reliable outbound webhook delivery for .NET 10 with retries, leasing, HMAC signing, observability, secure HTTP defaults, and pluggable durable persistence.

    C# 4