Rodrigo de Oliveira

Software Architect .NET Distributed Systems Cloud

I have worked in software development and the evolution of enterprise systems for more than 20 years. My experience spans automation, backend applications, integrations, and distributed systems.

I currently work as a software architect, contributing to solution design and review, defining technical standards, and supporting engineering teams through implementation.

Experience

Professional journey

  1. –present

    CI&T

    Current

    I joined CI&T working on the development and evolution of enterprise applications. During this period, I worked with APIs, microservices, and integrations using technologies such as .NET, Kotlin, Node.js, and TypeScript. I also contributed to automated testing, observability, and solutions running on AWS.

    Over time, I became more directly involved in defining and reviewing technical solutions. I currently work as a software architect on financial systems in the credit and lending domain, primarily using .NET and Google Cloud Platform. My work includes architectural decisions, integrations, technical documentation, and supporting engineering teams through implementation.

  2. –

    IBM

    At IBM, I worked on the development, maintenance, and modernization of enterprise applications. I contributed to projects involving OAuth authentication and authorization, the evolution of .NET systems, and the support of applications that required close attention to security, availability, and performance.

    I also developed automation using Python, Selenium, and PowerShell, and worked on monitoring and investigating production issues. This experience broadened my understanding of operational concerns, particularly troubleshooting, maintenance, and service continuity.

  3. –

    Pearson

    At Pearson, I worked on enterprise platforms related to ERP, business intelligence, franchise management, gamification, and digital content distribution. My work covered web applications, APIs, integrations, and data access components, primarily using C#, ASP.NET MVC, WCF, and SQL Server.

    I contributed to projects for email account management, secure material distribution, and integration between different systems. This period helped consolidate my experience in enterprise application development, including not only new features but also the security, maintenance, and evolution of existing systems.

  4. –

    weme

    At weme, I developed portals and web applications for clients across different industries. The projects included content management systems, store locator tools, and public-facing applications built with .NET, ASP, JavaScript, and jQuery.

    I also developed data access components and integrations between applications built with different technologies. This experience deepened my work in web development and expanded my involvement in solutions that combined user interfaces, business rules, and data persistence.

  5. –

    Earlier experience

    Early in my career, I worked mainly on automating administrative routines and internal processes using VBA and Visual Basic. I developed applications that supported management and operations in industrial, commercial, and pharmaceutical companies, addressing the specific needs of each environment.

    I later worked on commercial systems, electronic invoicing, web service integrations, and the migration of Visual Basic 6 applications to C#. These experiences formed the foundation of my software development career and marked the transition from automation solutions to broader applications and integrations.

Open source

Open-source projects

A selection of tools, libraries, and learning projects that I develop or maintain.

ADR Guard

A tool for creating, validating, and organizing Architecture Decision Records (ADRs). It includes a CLI, GitHub Actions integration, and a VS Code extension.

.NETGitHub ActionsVS Code

Dapper.FluentMap

A fluent mapping library for Dapper, originally created by Henk Mollema. I currently work on its maintenance and evolution, with attention to compatibility, testing, and versioning.

.NETDapperNuGet

Repo2C4

A tool that generates C4/LikeC4 architecture documentation from the analysis of .NET repositories, with evidence traceability and review of generated results.

.NETRoslynLikeC4

Repo Control Center

An Angular dashboard for monitoring my GitHub repositories, bringing together information about pipelines, security, releases, activity, and technology versions.

AngularTypeScriptGitHub API

dotnet-observability-lab

A .NET lab for exploring asynchronous processing, messaging, idempotency, observability, and failure recovery using patterns such as Outbox and Inbox.

.NETRabbitMQOpenTelemetry

View all repositories on GitHub ↗

Community

Open-source contributions

In addition to the projects I develop and maintain, I contribute to projects maintained by other developers and communities. These contributions include documentation improvements, bug fixes, and code changes.

View contributions on GitHub →

Newsletter

Articles and publications

In the Café com código newsletter, I publish articles about software architecture, .NET development, distributed systems, Domain-Driven Design, and engineering practices.

Read my articles on DEV Community ↗
DEV Community · Sep 29, 2026 · English

How I organized security policies, reusable workflows, .NET maintenance, and AI agent governance across my GitHub repositories.

Read on DEV Community ↗
DEV Community · Sep 22, 2026 · English

ADR: Recording the Why Behind Decisions and How ADR Guard Helps Keep Architectural History Reliable

Read on DEV Community ↗

Profile

About me

Portrait of Rodrigo de Oliveira

I have a degree in Systems Analysis and a teaching degree in Philosophy.

Throughout my career, I have worked both on implementing and defining technical solutions. I enjoy understanding problems, discussing alternatives, and seeing how decisions hold up during software development and operation.

Outside my professional work, I maintain open-source libraries and tools, explore new technologies, and share some of what I learn through articles and technical discussions.