There are many articles about code review principles, benefits, and why we should do them. This one is a bit different.

I’ll try to present my practical checklist on Code reviews in a very minimalistic way. This checklist is built on my experience and certainly does not include every possible checkpoint for every project in the world.

Instead of being completely full, the checklist aims to be used as a baseline of review. And also as a reminder of some basic points that sometimes we just forget. …


Image by Pixabay

I’m sure every developer has their own techniques of debugging and problem-solving. Here I’m sharing the things that I do the most to solve complex problems.

Some of them are very well known and others are just my ways of doing things(maybe they are well known as well, I’m just not aware of the terminology). I hope you find them useful too and adopt them in your routine as well.

Talk to someone about it


I was extremely excited when this feature was introduced. It saved us tons of hardcoded configurations and hours of maintaining them because of their dynamic nature. It also helped us distribute better our jobs over the runners that we had.

This feature is very useful in cases of testing or building with different environment variables.

In the example that I’m showing, I have a testing framework and 2 different environment variables: currency and language. If I want to run the same test job for every language, I can just create a gitlab-ci.yml config and list all of the languages. Easy right!

But what if the list of languages is dynamic?! In that case, even for…


Image from Sentry Blog

Let me start by saying that 60 000 errors per day it’s a lot!

When we first saw the logs, we weren’t even realizing how much that is. And it is not that bad only as a number but because in those 60k errors there might be hundreds of hidden production bugs.

And that’s how we’ve started looking at our error tracks in the first place.

During a severe production incident, after hours of debugging and not having stable reproduction steps, we started to analyze the error tracking logs that we had at that time.

There were hundreds of logs…


Have you ever tried to search for Micro Frontends implementation for game development? And furthermore, have you ever tried to search for a “slot game architecture”?!

There are tons of articles about Micro Frontends for web apps but when it comes to games, it’s just all silence. The Micro Frontends architectural model can be applied in game development with the same success as in web applications.

Why Micro Frontends for games?

Even the simplest game has some basic parts which can be defined as separate logical units. …


Like almost every automation process, this story comes from the necessity of optimization and error-proofing of a manual job.

Before we get into how we’ve created a testing farm, let’s first define the initial state of this story.

So, we are developing games based on micro frontend architecture. The final product is divided into different micro-frontends. We have the game itself, some mini-games called widgets, and some UI components wrapped into another micro frontend.

All of those projects support 3 different languages - en, de, it. …

Borislava Kirova

Passionate developer. Software architect. Automation enthusiast.

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