Photo by Theo Eilertsen Photography on Unsplash

Last year was a game-changer in everyone’s life. Some changed for the better, but unfortunately, some went in the opposite direction.

It’s up to you to choose which direction you want to follow. You must remember, you're never alone! And if you think you are, it’s a pleasure to meet you. I’m here for you!

I’ve got 4 books I want to share with you today, as I’m sure they will change your life for the better, the moment you read…


Photo by Mathyas Kurmann on Unsplash

One of the most fascinating and challenging topics that an application workflow can have, is the message/event-driven design. In the long run, it may even be the difference between success or failure.

All the presented code is available on Github. You can easily access it through the “Useful Resources” section at the end of the article.

# Index

  1. Architecture Explained
  2. What’s Kafka?
  3. Practical Example
  4. Conclusion
  5. Useful Resources

# Architecture Explained


Photo by Esteban Lopez on Unsplash

You’re in a restaurant waiting for your takeaway meal, and the meal order meal screen is damaged. You get asked to take a seat. While doing so, you start a Facetime conversation with a friend.

The simplest and smartest thing you can do is wait until your name is called, and in the meantime, keep up with the conversation. However, imagine a second use case, where you’re an impatient person and every five minutes, you ask if it’s ready.

In the end, we all know that the second approach makes less sense, as asking for more updates will not make…


Photo by Norbert Kundrak on Unsplash

Four and a half years have passed since my first contact with the professional world as a software engineer.

Through that time, I was fortunate to meet extraordinary and skilled people. Who taught me how to create my own path, trust in others, and most importantly, not be afraid of facing my fears.

I will give you some of the most insightful learnings I had the opportunity to experience in the past four and a half years.


Azure functions

As you probably already noticed, the cloud is a hot and recurrent topic in today’s conversations.

We repeatedly hear buzz words like AWS Lambdas, Kubernetes, Azure functions, and much more. It’s incredible and sometimes stressful, to see and realize the enormous number of functionalities these companies supply to their clients.

As software engineers, it’s a requirement to get everything up to speed and keep up with the market speed and innovation, so we don’t lose the train.

In today’s article, I will mainly focus on the Azure functions:

  • What a hack is an Azure function?
  • Is it easy to create…


Photo by Glenn Carstens-Peters on Unsplash

We all know that our working routines, as well as our productivity, suffered a significant change after we got into this pandemic stage.

Probably most people increased the spending time on Netflix, video games, social media, etc. I admit… I was one of them!

Fortunately, as a software engineer, our sector didn’t get affected much by the plague. Most of us just needed to switch our laptop’s location, and that was it, we were ready to start over again.

I knew I wanted more. I didn’t want to spend…


Spring Boot with Redis integration

When was the last time you needed to submit or extract some data from a website, and it took an eternity?

Caching is a well-known concept, and it has existed for a very long time.

Unfortunately, many applications fail to extract their full potential. With such a system within your application, your response times can become significantly faster, without much work.

Your clients will thank you later!

Today, I will explain to you, what and how through the following topics:

  • Cache Definition
  • What the heck is Redis (Caching System)?
  • How can I integrate it with Spring Boot?
  • Example Time!
  • Conclusion

# Cache Definition


Photo by Levi Ventura on Unsplash

In a microservice architecture, sometimes we want to ensure behaviors across all services, such as: request tracking, logging, header validation, and so on.

To consistently enforce such policies, we shouldn’t throw those responsibilities to all teams responsible for each group of microservices, or each one would develop their solution, and the word “consistency” would boil away.

Focusing the logic above in what’s called Policy Enforcement Point (PEP) is the best decision you can make. …


Photo by 贝莉儿 DANIST on Unsplash

Most rookies, whenever they hear the word API in a conversation or an article, some interesting thoughts may come to their minds, like complexity, unknown, difficulty, etc.

There’s no problem with that, we all must start from somewhere right? …


Photo by N I F T Y A R T ✍🏻 on Unsplash

We all want our applications to be secure, bug-free, and resilient to any type of problems right? This article is all about client resiliency and how to achieve it.

Most software engineers and architects look to apply patterns, mostly related to infrastructure or service failure, and the normal solution we look for is redundancy, wherewith load balancing, for example infrastructure segregation, we try to avoid the big word, failure.

In this article, I will explain to you the main concept of “Circuit Breaker” and how it will help you bulletproof your microservices, and make them resilient to external problems with…

Rafael Martins

As a software engineer, creating good and reliable solutions is my everyday goal. Within my articles, I try to express all the excitement and passion around it!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store