byrodovalho.comThe "Dual-Write" Trap: Why Your Microservices Need the Outbox PatternThe Silent Killer of Consistency Hey dev! Let’s talk about a scenario that has kept many of us up at night. You are designing a .NET microservice. Your logic seems solid: Register a new Order in the database (SQL Server/PostgreSQL). Publish an Order...Nov 16, 2025·3 min read
byrodovalho.comDocker for the .NET Developer: From "It Works on My Machine" to Production ConfidenceHey there, dev! We’ve all been there. That moment of relief when you finish a feature, everything compiles, the tests pass, and you proudly declare: "It works on my machine!". Hours later, chaos ensues: the application crashes in the QA environment, ...Oct 17, 2025·5 min read
byrodovalho.com.NET 8 Azure Functions: The Definitive Guide to Annihilating Cold Starts and Optimizing PerformanceIt was a quiet Tuesday, until it wasn't. A P95 latency alert fired for one of our most critical APIs—the one that processed new customer orders. There were no failures, no 500 errors. It was something more subtle and dangerous: a creeping slowness. S...Oct 9, 2025·9 min read
byrodovalho.comClean Code Series: The Art of Clean Error HandlingWhy elegant error handling is non-negotiable in professional software development Hey dev, ever been jolted awake by a critical production alert? Or lost hours of data because an error was silently ignored? If you shivered just thinking about it, you...Jun 11, 2025·4 min read
byrodovalho.comMastering Go Concurrency with a Real-World Case StudyHey there, dev! Who hasn't faced a batch process that grinds the application to a halt or takes hours to run? Whether it's processing payments, generating reports, or, in our case today, validating and registering thousands of bank slips (boletos, a ...Jun 3, 2025·4 min read