It was 2 AM, and I was staring at a production incident ticket titled “User payment processed, but order wasn’t created.” The guilty? Our team had naively implemented a dual write - updating the database and sending a message to Kafka in the same tra...