Use-Case-Driven Testing

Why shouldn't we test the implementation? How to decouple our tests from the code? What is the reason to add a new test? Why is mocking a code smell? In this article I will try to find answers to those questions.

Serverless Blue-Green Deployment

Blue-Green Deployment is a very good technique that has been successfully used for managing releases of cloud applications. Now it's time to rethink it a bit for serverless systems.

Rollback and Microservices

Is it even possible to roll microservices back?

Function Separation in a Microservice

Talking about serverless microservices, functions are the basic building blocks of the service functionality. How to design them from the code and deployment perspektive?

Testing Serverless Systems

Testing serverless systems is hard. In this article, we will discuss some practices which work well for my project.

Secure Communication between Services in Multitenant Systems

Implementing a SaaS as a multitenant system brings a lot of benefits. As usual, there are some tradeoffs, too. For example security becomes more complex. Let's take a look at possible approaches when implementing security in a multitenant architectrure.

Meaning of Queues and Topics in AWS

What's the difference between queues and topics in AWS? It's not as obvious as it seems to be...

Pitfalls of Processing a Stream from an External Program

How to design a standalone program that produces a big amount of binary data, and what are the pitfalls of the approach?

Synchronized Methods vs. Semaphore

When one-thread-access for synchronized methods is too restrictive, semaphores come to mind.

Managing Asynchronous Tests

It's recommended to avoid any asynchrony within the scope of the test. Unfortunately, this is not possible everywhere.