Blog

Category

Topic

Showing 227 posts
Engineering

The Lifecycle of a Pricing Rule

What my team had to learn about pricing rules after they shipped — ownership, expiration, deletion, and governance as answerability.
Engineering

What I Would Build Differently Today

The closing pass of the series. If I were starting a pricing platform today, with the benefit of everything the first time taught me, this is the shape I would build — and the order I would build it …
AI

Engineering Leverage in the Age of AI

The real question about AI in engineering is not whether it helps write code faster. It is what changes when the cost of iteration starts to fall.
Engineering

Ten Mistakes I Made Building Pricing Platforms

A personal retrospective. Ten things I got wrong while building pricing platforms, what each one cost, and what I would do differently. The mistakes are rarely about syntax — they are about which …
Engineering

Building Pricing Systems That Age Well

Pricing systems do not fail when they are built. They fail in year three, when nobody remembers why half the rules exist. The team I worked with has been holding the lifecycle together by hand — …
Data

Simulating the Future

How my pricing team built simulation in three iterations — replay, shadow mode, and the habits we kept — and what each one taught us about trusting a recommendation before customers ever saw it.
Engineering

Rule Engines vs Decision Engines

A rule engine matches rules against facts and runs actions. A decision engine coordinates rules with models, constraints, policies, and experiments to produce a single explained decision. This post is …
Development

Dotfiles 2025: Boot Fast, Adapt Smarter

This year I’m not trying to reinvent my shell. I’m preparing it to work anywhere. With multiple machines, containers, and WSL in rotation, I needed a setup that stayed fast, stayed clean, …
Engineering

Replay-Based Simulation

Replay-based simulation would pair a stored engine snapshot with a captured traffic fixture and a candidate rule set, producing a deterministic diff. This post is the design I have been working …
Development

Check-Updates: Keeping My Machine Honest

Keeping a dev machine updated isn’t just about installing the latest OS patch — it’s about avoiding friction. Friction like: An outdated CLI that fails silently Missing system dependencies …
Engineering

Shadow Mode for Pricing Systems

Shadow mode runs candidate pricing logic alongside the active path, on the same live request, comparing outputs without changing what the customer pays. This post walks the pattern, the pitfalls, and …
AI

From Repetition to Automation with GenAI

Transform repetitive tasks into smart automation using GenAI—from recognizing patterns in your work to building practical workflows with GPTs and Google Apps Script.
Engineering

Generating Synthetic Pricing Traffic

Production traffic carries last week's biases. Synthetic traffic carries the scenarios you need to test before they happen. This post is about generating it deliberately.
AI

Prompting for Models, Not Just Humans

Learn to write structured, reusable prompts that machines understand and can reliably execute across different AI systems and workflows.
AI

Using AI to Think Better (Not Just Faster)

Discover how to transform AI from a fast answer machine into a thinking partner using Socratic prompting to improve your reasoning and decision-making process.
Engineering

Explainable Rule Execution

An explanation is not a log. It is a structured artifact every stage of the engine contributes to, and the contract the system makes with operators, auditors, and customers.
Engineering

Pricing Is a Tradeoff

Why the hardest pricing question isn't what should we charge — it's what are we willing to sacrifice?
Engineering

Understanding Price Sensitivity

The goal was never finding the highest possible price. The goal was understanding how customer behaviour changes as price changes.
Engineering

Testing Business Rules

Most rule engine tests protect implementation details and quietly let business behaviour drift. This post is about the kinds of tests that catch the bugs that actually matter.
Leadership

OKRA Session #4: OKR Quarter Draft Plan

Session #4 of the OKRA series: how to collaboratively build a visual draft plan for the quarter, making alignment visible and actionable.
Engineering

Building a Rule Evaluation Engine

A rule engine is a pipeline. This post pulls the pipeline into named stages — load, validate, match, evaluate, execute, compose, explain — and shows how the boundaries become observability.
Quality

Bug Bash: How We Explore Quality Together

How to run effective bug bash sessions that bring engineering, product, and design together to explore quality through cross-functional collaboration and real-world testing scenarios.
Engineering

Matching Rules at Scale

Matching semantics decide which rule fires when more than one could. This post walks the four common policies, the operators they support, and the bugs each one hides.
Development

Dotfiles 2023: Durable by Design

Quiet Refinement, Serious Intent This year, my dotfiles aren’t about exploration anymore. They are infrastructure. I wasn’t adding much. I wasn’t removing much. I was refining the …
Engineering

Pricing Is a Team Sport

Why successful pricing decisions emerge from product, analytics, engineering, and business working together — not from any single discipline.
Engineering

Rules as Data, Not Code

Rules as data is a meaningful idea only when the loader validates, versions, and fails safely. This post walks through the loader as the boundary it deserves to be.
Leadership

The Five Dysfunctions, Read as a Diagnostic

The Five Dysfunctions of a Team is the lens I'm taking back to my team to read where the next piece of work has to go. Trust at the foundation, results at the top, each layer dependent on the one …
Leadership

The STAR Format for Performance Conversations

Performance conversations go sideways when they slide from 'what happened' into 'who you are'. STAR — Situation, Task, Action, Result — is the format that keeps the conversation in observable facts. …
Leadership

Push vs Pull: The Coaching Spectrum You Move Along

Pull-coaching grows judgement; push-coaching delivers clarity. Both are care. I've been flexing along this spectrum since I started coaching, drawing on the managers who modelled each end for me. The …
Leadership

Psychological Safety Isn't Comfort, It's Permission

Psychological safety gets misread as comfort, niceness, an absence of conflict. It is none of those things. It is permission to bring the half-formed idea, the inconvenient question, the mistake — …
Leadership

Trust as Infrastructure: How It's Built and Lost

Trust isn't a vibe. The training broke it into four dimensions — integrity, competence, compassion, reliability — and walked us through a self-assessment. I've been building each of those deliberately …
Leadership

Coaching as a Daily Behavior, Not a Title

Coaching isn't a calendar event. It's the daily move from telling to asking — and it's the move I've been making from day one of this role, because I learned early that coaching means understanding …
Leadership

Flexing Communication Styles Without Faking It

Directive, analytical, relational, visionary — we all have a default and we all over-use it. I've been flexing intuitively because being close to the team means reading the person in real time. The …
Leadership

Responsive Zones: Noticing How You Show Up

The same leader, under pressure, can shrink the team's space without realising it. I know the three reactive defaults — micromanage when anxious, withdraw when overloaded, dismiss when defensive — …
Leadership

Grow Their Minds, Expand Our Horizons

The Power of Reinforcing What Matters Empathy, collaboration, autonomy, mastery, and purpose — these aren’t buzzwords for me. They’re the core of how I’ve been leading teams. So …
Engineering

Designing a Rule Model

Designing the in-memory Rule type is the moment you commit to a contract. This post pulls bre-go's Rule, Condition, and Action apart and shows where the tradeoffs live.
Leadership

Managers' First 90 Days – Intro & People Partners

Returning to the Fundamentals with Fresh Eyes This week I joined the kickoff session of the Managers’ First 90 Days program. Even after nearly two years in the role, it felt genuinely valuable …
Leadership

Leading/Managerial Trainings

A Year to Learn, Share, and Grow I’m thrilled to begin this new chapter in my leadership journey by participating in Omio’s management training program. Over the next few months, …
Leadership

Respectful Workplace – From Inclusion to Equity

Beyond Equality: Building a Respectful and Equitable Workplace Creating a respectful workplace is not about checking boxes. It’s about doing the deep work of understanding systems, histories, …
Engineering

What Is a Business Rule?

A business rule isn't an if statement. It's a decision somebody owns, audits, and has to explain — and that ownership shapes everything you build around it.
Leadership

From Kanban to Scrum – Part 4: Our Plays, Our Way

Introduction In this final post of the series, I’ll walk through the five core Scrum plays we designed as a remote-first, autonomous, and highly collaborative team: Daily Sync, Planning, …
Leadership

Officeless by Design

How our team transformed emergency remote work into intentional officeless culture, supported by structured training and collective experimentation.
Development

Dotfiles 2021: Preparing to Scale Myself

Two Years Later, Same Tools, New Intent By 2021, I hadn’t added much to my dotfiles in terms of features — but I had changed how I used them. Two things had shifted: remote work became default, …
Development

Dotfiles 2019: Back to Personal

After the Team Setup, the Personal Reset In 2018, I had adjusted my dotfiles to work better within a team. I created a common.zsh, added friendly comments, and tried to make things more shareable. But …
Architecture

SOLID Principles and the Mess We're In

We’ve been here before. The industry goes through cycles. Centralization, decentralization. Monoliths, microservices. But if you’re reading this, you’re probably navigating through a …
Leadership

Building Trust, One Game at a Time

While working at Thoughtworks, I had the opportunity to design and facilitate a team-building workshop that brought together 60 consultants across five project teams. The goal wasn’t simply to improve …
Development

Dotfiles 2018: From Personal to Shared

From Autonomy to Alignment As I’ve told before, I had just joined GoEuro. That meant not just switching laptops — it meant adapting to how another engineering culture thought about environments, …
Leadership

Leaving ThoughtWorks Brazil, Heading to Berlin

Telling you today that I'm leaving ThoughtWorks Brazil at the end of November and moving to Berlin. Almost five years of TWers, a team I love, and the next chapter at GoEuro — written quick and warm, …
Leadership

Team Building: Software Depends on Relationships

We often ask ourselves: What defines a good product? A good team? Or just… success? In this keynote, I brought a simple but hard-earned truth: software is not just code—it’s built on …
Architecture

SOLID Principles in a Microservices World

In the early days of our careers, most of us learn about SOLID principles as if they only apply to object-oriented programming and class design. But these principles go far beyond clean code inside a …
Development

Dotfiles 2017: Cutting Even Deeper

One Year Later: Time to Prune My dotfiles is stable. They are modular, sourced dynamically, backed by a dumb install script that just works. But I start to feel a new kind of friction: knowing that …
Development

Dotfiles Refinement: Cleaner, Smarter, Faster

A Year Later, A Simpler Setup Since my last update in 2015, I’ve had time to live with the modular dotfiles system. It worked. Onboarding was faster, the install scripts were smarter, and I had …
Development

Evolving My Dotfiles: From Flat to Modular

Two Years Later: Why I Revisited Everything When I first published my dotfiles back in 2013, I was just trying to stop forgetting my setup. It worked. Having .aliases, .exports, .functions, and a …
Leadership

Don't Fool Yourself: Vanity Metrics

Why I Gave This Talk Again I first gave a version of this talk at the end of 2012 — “Sucesso na medida certa.” Three years later, the slide that aged the worst was the one I was proudest …
Leadership

Building for Uncertainty, Not Control

Building for Uncertainty, Not Control We’ve seen this movie before. A shiny company bursts into the market, raises millions, maybe billions, scales fast, grabs headlines, and then… disappears. …
Events

Build Frameworks, Don't Take Hostages

What This Talk Was Really About This wasn’t a talk against frameworks. It was a wake-up call. Over the past decade, we’ve seen an explosion of frameworks across every language ecosystem. …
Events

Technology isn't enough! Barry O'Reilly

During the years, companies appear and disappear with a certain frequency, and not just small ones have disappeared, but many large ones have perished as well. Where did the ideas go? What happened to …
Career

On Joining ThoughtWorks

Today is my first day at ThoughtWorks. A personal post about how I got here from RBS, why a message from Paulo Caroli stopped me in my tracks, and an introduction to ThoughtWorks for friends at RBS …
Events

Hadoop and the Big Data Ecosystem

Why should we worry? That’s how it started with the keynote from Todd Lipcon… Perhaps because over the last few years, companies have seen an explosion in volume, variety, and speed of …
Events

Real-time Data Science with Storm

Today we know that we have a lot of data, and from there, we discover that this data isn’t just a box with several others. You apply statistical processors, something about artificial …
Events

How Impala Has Pushed HDFS in New Directions

As Impala and the Cloudera have helped the community over the past few years, nothing better than the Aaron to talk about it with Hadoop, let’s see how it works with HDFS, and how the latter has …
Events

QConSP 2014! It's started!

QCon São Paulo 2014 In its 5th edition, Qcon starts in São Paulo, at WTC, with a new location, new infrastructure, larger network intervals. This year, the sponsor tracks will be separated and named …
Events

Neal Ford – Abstraction Distractions

Discussing abstractions in today’s context is reflecting on the very nature of computer science and software engineering. Scalable solutions, routine problems all pass through the choice of how …
Events

The latent demand limbo – Alê Gomes

The Alê started by presenting himself and positioning himself as unworthy of being the keynote speaker at this great event, and began defining everyone else involved in the community’s growth. …
Events

Code metrics, what I want them for? -Mauricio Aniche

Making decisions is very complicated and in software, we live by guesswork. In code, we should stop doing this. Which part of the code should be started with coverage or tests, the easiest class, the …
Events

Agile: Unlocking Our Human Potential - Patrick Kua

There’s more to developing products than just developing them. Patrick has been working with software for a while, and many problems later he sees agile methods as a way to make it happen, …
Events

Welcome to AgileBR!! (

Today, June 26th, a day for one of the biggest protests of our new Brazilian change, we are gathered to start the largest agile methods event in the southern hemisphere. The great Manoel Pimentel , …
Development

Dotfiles: Setup, Backup, and Productivity

Getting Serious About My Setup This week I finally took the time to clean up, version, and share my dotfiles. I’ve been tweaking my terminal and development environment for a while, but after …
Development

Why Dotfiles Matter: Notes from a Fresh Start

The Real Reason I Started Caring I didn’t plan to spend my week deep-diving into dotfiles. But after formatting my Mac yet again, I lost a big part of my terminal comfort — custom aliases, …
Events

Desconf 2012 – End of the world

Desconf 2012 – I Spoke Before the End of the World It happened on December 17, 2012, at the third edition of the rapid unconference (#desconf2012) in Porto Alegre. This year, only Daniel Wildt and …
Leadership

Success in the right measure

Success in the right measure – Vanity metrics Recently, I witnessed a development team presenting to their managers, defending quality as an agent of growth. They were presenting a graph that showed …
Events

Growing Fluency and Excellence

The James Shore started his presentation at 09:10 talking about how he got involved in a first project using FDD, with various practices involving the client and prototypes. After several deliveries, …
Events

Welcome to Agile Brazil 2012

The Agile Brazil 2012 has arrived! We started at 09:40h with Dairton Bassi making the honors, this year’s event features participation from 782 participants, 302 companies, 121 presentations, …
Events

First Week of Lightning Talks and Fishbowls at TecnoPUC

A few hours ago at the 4º dia of 1ª Semana LightningTalks e FishBowls TecnoPUC , I presented a Lightning Talk Test Driven Development – Em busca de feedback útil e concreto , which addressed the …
Leadership

Se virol – April Meeting of GUMA-RS

The Agile Methodology: Common Pitfalls and Challenges Many teams are adopting the Agile methodology as a way to improve their development processes. However, it’s important to recognize that …
Leadership

Gratitude and Transition: From Dell to RBS

Today marks the end of an incredibly meaningful chapter in my career. My time at Dell, through Stefanini, was short in calendar months — but intense, rich, and formative. I leave with deep gratitude …
Leadership

Get moving and why not!!

A recent participation in Desconf 2011, as well as conversations and events that aren't so recent, made me reflect on our behavior as agents of change in our work environment. Many times we’ve …
Events

UNCONFUSED 2011-Mustache edition

On the last Saturday, November 29th, 2011, I had the pleasure of exchanging many ideas during the second edition of a new type of event that brings innovation in its name DESCONF! Hosted by Faculdade …
Development

Never too late! From Bash to ZSH!

A New Era in the Terminal After years using bash, I decided to embrace a simple yet powerful change: adopting Z Shell (zsh). What started as a curiosity during a conversation with a colleague turned …
Leadership

Remote Work, Resilience, and the Power of Friendship

This has been one of the most emotionally intense seasons of my life. In July, my mother suffered a major stroke. We spent a full month by her side in the ICU. The stroke took more than her speech or …
Events

Songdoro: Music, Focus, and Flow

Right after our lightning talk on retention and knowledge transfer, I joined Daniel Wildt for a second session. This time, we were tuning into something less visible but incredibly important — focus, …
Events

How Do High-Turnover Companies Actually Learn?

The Question That Opened the Talk How does a company with high turnover actually learn? I started my talk by throwing this question at the audience—not just rhetorically, but as a real invitation to …
Events

Agile Brazil 2011 – I'm Going!

Agile Brazil 2011 will take place from June 27th to July 1st in Fortaleza, CE — bringing together more than 50 talks covering some of the most important global agile topics. And the best part: …
Development

Version Control: Don't Code Without It

In this lecture, we turned to a topic that every developer ignores at their own risk: version control. But we didn’t just walk through Git commands—we explored the reasoning, pitfalls, and …
Development

Advanced TDD: Thinking in Tests

In this lecture, we explored how Test-Driven Development (TDD) evolves from a tool to a mindset. Through live coding and real requirements, we worked on building a dynamic email templating …
Development

Unit Testing with JUnit: Clarity Before Complexity

Reflections on the fifteenth and final Software Engineering lecture, exploring unit testing with JUnit as a structured approach to validation, feedback loops, and design improvement.
Development

Requirements, Validation, and the Role of Testing

Reflections on the twelfth and final Software Engineering lecture, exploring requirements engineering, validation practices, and the critical connection between clear requirements and effective …
Leadership

No Masks in REAL PROJECTS!

Why Don’t We Talk More About Transparency? In real-world projects, uncomfortable truths often get buried in status meetings. Delays are sugar-coated, technical debt is ignored, and communication …
Leadership

My Team Needs an Overdrive Pedal

Lately, I’ve been thinking a lot about how we can make our teams work better — not just as leaders, but as people who genuinely want to contribute with efficiency, empathy, and purpose. I …
Leadership

Shouldn't the Goal Be Delivering Great Features?

Every time I hear someone talk about using agile methodologies, I’m more convinced that we need to reinforce not just the message of adaptability, but also the discipline required to become …
Leadership

One More Teacher in the Family!

I didn’t expect this to happen so soon. Academia, I was told, is a long path — one that favors the most experienced. But in 2010, my family gains one more teacher. A Longtime Dream From a young …
Events

Mike Keith - Java EE 6: A Major Evolution

Mike Keith’s talk started around 11 a.m., just after the coffee break. He kicked off with a light tone and a bit of humor about the long wait between Java version releases. One early slide …
Leadership

yUML – Why Write a Blog?

For some time now, I’ve been trying to develop the habit of not just reading great posts, but writing them too. Many of those I read emphasize the importance of sharing knowledge — and …
Architecture

From Models to Code: RUP and Layered Architectures

Most modeling efforts fail because they get stuck in abstraction. Diagrams pile up. Documentation gets stale. No one connects them to code. But that’s not what RUP was built for. Rational …
Architecture

Modeling with RUP: Discipline, Not Documentation

The Rational Unified Process (RUP) is often misunderstood. Critics see it as a heavyweight process filled with documents, diagrams, and endless meetings. But when used as intended, RUP is a framework …
Architecture

Analysis Patterns

A few weeks ago, during our Object-Oriented Modeling and UML class with Professor Osmar Fernandes Jr., we were introduced to Software Analysis Patterns. This post summarizes that concept and shows …
Architecture

Mini-scenario: PARKING

We’ve reached the final scenario in this UML mini-scenarios series developed under the guidance of Professor Osmar Fernandes Jr. After exploring web classifieds , betting pool control , and …
Architecture

Mini-scenario: Construction Control

Continuing our series, this is the third mini-scenario developed under the guidance of Professor Osmar Fernandes Jr. After exploring web classifieds and betting pool control , we now model a …
Architecture

Mini-scenario: Lottery Pool Control System

Continuing this series, here is the second mini-scenario developed under the guidance of Professor Osmar Fernandes Jr. After exploring a web classifieds system, we now model a different domain: …
Architecture

Mini-scenario: Web Classifieds

As part of my Master’s in Web Systems Projects, I created four mini-scenarios under the guidance of Professor Osmar Fernandes Jr. This series explores different business domains through UML …
Leadership

Ready to start!

I’m bringing good news with this first post: I am starting today this new experience, creating my first personal blog. And bad news too: I still haven’t decided on how to start the …