In the micro-services architecture, when we persist data, sometimes we keep referenced entities ids to another micro service’s DB. This can be considered as side effect of the architecture.  lets describe a scenario. Service S1 has collection C1 with a referenced id to Service S2 on collection C2. We want to find all documents that has a referenced […]

Read More →

When you work for a rapidly growing web organization, you will usually have to maintain “cash cow” legacy systems while working on next generation systems in parallel. Considering that while, in the process of developing the next generation system, the majority of revenue will still come from the cash cow legacy systems, and there will […]

Read More →

This blog is about experience, not about actual software tools for design. What I’m actually going to discuss are rules of thumb, principles and approaches, I collected over the years of writing software. At some point, I realized that I have a list of tools/rules/principles I’m utilizing over and over again, so I decided to […]

Read More →

Motivation: Performance improvements are always welcomed, but more often than not, they are very difficult to achieve. Discovering the root of performance issues, simply by reviewing the code, can be a challenging task for every developer. Profilers can help you pinpoint a lot of the problems, by providing information on time and memory consumption.   […]

Read More →