Hello and welcome to my delightfully sporadic blog!


  • I’m João, a self-confessed tech enthusiast with a knack for unpacking the challenges technology can toss our way. If you share a similar passion for pinpointing where computers go awry, you’re in the right place.

Asynchronous Operations in REST APIs

Sit down, take a breath, and let’s explore a bit about asynchronous operations in web APIs. If you are out of time, please, use the table of contents above. And let’s start it! With the increasing complexity of data operations performed through APIs, the demand for more efficient methods for handling these requests has grown. Traditional synchronous REST APIs have the client wait for the request to be processed, which can lead to long wait times and inefficiencies....

June 25, 2023 · 19 min · João Freires

Agile and Software Documentation: The Power of Conceptual Documentation

We all know Agile is not known by its paperwork, right? Its heart beats for working software, not hefty manuals that could double as doorstops. But that doesn’t mean we toss documentation out the window. Instead, Agile asks us to be smart about it—think “just enough” rather than “just in case.” The Agile methodology with its emphasis on flexibility, collaboration, and customer satisfaction, has revolutionized the way we approach software development....

March 8, 2023 · 7 min · João Freires

A Head-to-Head Match: Cron Jobs vs. Apache Airflow

Got some tasks to schedule and automate? If you’ve been looking into it, you’ve probably stumbled upon two giants in the game: the good and old Cron and the new tool that everyone is talking about, aka Apache Airflow. Sure, they both do the job, but they’re different beasts when it comes to what they can do, how they do it, and how much of a brain-teaser they can be. So let’s do a deep-dive comparison of these two, and see which one could be your knight in shining armor....

February 25, 2023 · 4 min · João Freires

Breaking Free From One-Database-For-All

Hey, if you’re into software development, you’d know how crucial data storage and management are for your applications’ functionality, speed, and flexibility. Now, there’s been this belief for a long time that one database can do it all. But lately, that idea is being challenged big time. Welcome to the world of Polyglot Persistence, where the mantra is “different strokes for different folks,” or rather “different data storage for different data problems....

January 18, 2023 · 3 min · João Freires

Overcoming Caching Scaling Hurdles

Recently, I had an opportunity to guide one of my interns in scaling a service, incorporating a load balancer and additional instances. As we navigated this process, it became an educational journey for both of us, where we had to anticipate and counter potential complications. While I cannot claim to have a complete grasp of all potential issues, certain challenges recur so frequently in scaling that they’ve become nearly impossible to overlook....

December 2, 2022 · 4 min · João Freires