Blog
The next part of the Ultimate interview preparation framework demystifies the system design interviews.Read the post
15.06.2024
Managing time in distributed systemsModern companies that do not do rocket science more and more often avoid DSA interviews. It is getting more commonly accepted, that an ability to write logic-rich code under time pressure tells very little about how a candidate actually performs in real life. Nevertheless, for many companies such interviews is still a thing, so let us do this recap.Read the post
19.04.2024
Emergency handling protocolIn the previous article I have covered the process of Docker image building, and then pushing it to the repository. In real life nobody does it manually, we let the continuous delivery work for us. So let us create a pipeline or two that automate the process.Read the post
In one of my application there was a total mess with error handling. Any wrong situation was treated as an internal error, so I could not set the alerting right. That is why every time there was an alert, I went to investigate, and it usually turned out to be some request for a non-existing ID or an inconsistent request body. A more clever solution was needed.Read the post
When I was a JS/JS developer, I was always proud of the ability of JS to run in both NodeJS and in a browser. This is something I really miss with the Golang/TS stack. But what if... having isomorphic library is still an option?Read the post
In todays brief kata I wanted to share my views on how fixtures for unit tests must be managed.Read the post
09.11.2023
The hooks pattern in Go: a Golang kata24.10.2023
Accessing GCP BigQuery: a Golang kataI made a kata on the dependency injection pattern before. The way I managed the dependencies was fine at that time. However, in a real life project, when the amount of dependencies grows, this may, and will turn into a hassle. The amount of imports and the boilerplate size becomes crazy high, and it basically gets repeated in every file!Read the post
I like automating things, so I try cutting edges where possible. One of the tiny annoying troubles bugging me was figuring the right live database to connect to, or the right cluster to select with kubectl, while knowing only a country name. Surely, if someone has just 2-3 countries, or even regional deployment, this does not turn into a problem at all. But if the deployment has 30, 40, 70 countries?Read the post
So, a recruiter gave you a call, or wrote you an email asking to fill some Calendly slots up, and the day X finally came. Before you commence, know this.Read the post
07.08.2023
SQL patterns, tips and tricks13.07.2023
Every day KubernetesI am a fullstack developer, and yet my knowledge of DevOps is still kinda fragmented. So I have decided to kickstart a series of articles where I will do research on how the deployment is done today, starting from having a bare web application running just locally, and ending up having it in the cloud, turned into a cloud-native application.Read the post
It is a well-established fact, that Chuck Norris counted from zero to the infinity. Twice. Today I am going prove it using Golang.Read the post
I have finally switched over to go1.20, so it is time to start making use of generics. So here comes my next Golang kata.Read the post
Lets say you made an amazing CLI tool that will for sure change the world one day, and make you a millionaire eventually. But before it turns you into a next Jeff Bezos, you need to distribute the tool.Read the post
In the previous article I made an Arduino-based weather indicator, a dream of my childhood. Since it exposes REST API, it is time to build some front-end for it.Read the post
03.04.2023
Making a weather indicator with ArduinoDo you recall that guy from a movie called "Zombieland", who used to have survival rules? Well, it is somewhat similar to the world of engineering. The demand for good engineers is (still) high, but the competition is even higher. So here is a list of insights I have managed to gather so far. Should you feel stuck with your career, or looking for new opportunities, perhaps this article can help you get off the ground.Read the post
It is Friday, and it means the time has come for another Golang kata! This time I am gonna explore layers of abstraction of a microservice written in Go.Read the post
For a software engineer once in a while it is good to make something that you can actually hold in your hands. Some people make ceramics, while the others sew or make paper models. I am indulging my interest in electronics, something I have tried to get into many years ago and failed due to procrastination and lack of materials.Read the post
07.03.2023
Google PubSub and Go: a Golang kataI was working as a front-end engineer for a quite while, so when I was back to fullstack, it took some time to pick it up. One of the challenges was to gather all the information about the setup of the project I joined for, in order to be able to perform my duties at a professional level.Read the post
This time I had a task to copy data between two database instances, potentially with some intricate logic implemented. Here is what I ended up with, give or take some styling and omitting all business-related stuff.Read the post
In every progressive organisation infrastructure is defined as code and maintained automatically. If your devops are still clicking the cloud provider GUI, then they are years behind.Read the post
In this article I am gonna share my learning regarding unit testing in Golang, and how it is different from JavaScript.Read the post
Not so long time ago I was assigned to build a feature for copying a remote file into our own GCP bucket. For somebody experienced in Golang that kind of task may seem quite trivial, but in my case I thought it could be helpful to somehow mark my progress with Go.Read the post
One lovely monday morning you are assigned to develop a list of task groups with counters: how many tasks are open, how many of them are completed, and so on. "Well, nothing is easier than that, consider it done before lunch!" - you think, and roll your sleeves up...Read the post
Back in times when I was working on a design system, I had to build a lightweight interactive demo environment to show off the capabilities of the library. Certainly, there are some canned solutions out there, but where is all fun in using something prefabricated? One can accept the challenge, and... Well, you know me.Read the post
A few days ago I have conducted my 16th technical interview. After a while, I have come up with a set of rules and good practices. Now I feel confident enough to share it.Read the post
Finding a new place in a worthy company is not an easy thing to do. If you already have a company on your mind, dont event think a successful interview is something you can pull off during lunch break or next morning after throwing a huge party. You need to prepare yourself accordingly, it aint easy walk. Today I have decided to make a summary of my experience in cracking the interview process.Read the post
Some time ago I was solving a challenge. I had to write an application that crawls code and reports certain patterns. I was evaluating different software that can convert source code into AST (Abstract Syntax Tree).Read the post
One fine day I have decided to have a contact form for one of my Jamstack-based websites. The goal was to have two simple fields and a button. Upon submitting the form I was supposed to receive an email.Read the post
While working on a design system, I have experimented a lot, and came up with a quite promising component boilerplate for such occasion. Here it is.Read the post
A while ago, being on sick leave, I challenged myself with setting up a baremetal K8s cluster. I chose Kubeadm back then, and so now I am sharing the results.Read the post
One day came, and I have faced a challenge of how to post a new message on Slack when someone submits a Google Form.Read the post
Time is not money. Time is a more precious thing. After getting tired of constant misclicks and repeated keyboard work, decided to save some of my time and build a tool for managing a GitHub PR pipeline.Read the post
This is a constantly work-in-progress list of cool project I have encountered or worked with.Read the post
For quite a while I was using Redux together with Redux Saga and was satisfied. Well, sort of, because I was constantly asking myself "Should the state management always be that complex?" Redux was a great library for it's time, when the concept of a centralized state was not well-coined yet. Nevertheless, one day came, and I have decided it was time to move.Read the post
10.06.2020
My collection of JS/TS snippets04.06.2020
My TypeScript cheat-sheet03.06.2020
My Shell Script cheat-sheet02.06.2020
My CLI cheat-sheetFrom time to time I observe designers making derivative colors by applying opacity to a base color against white background. While this approach works perfectly fine with wireframes, in the markup an element might not be always located on white. Therefore we need to know exact hex value to make use of it.Read the post
After failing to find a complete and correct guide on how to set up RaspberryPi4 for NodeJS development right, I have decided to make my own instruction.Read the post
Every software engineer and every company at some point tries to preserve the knowledge of best practices and know-how-s, in order to prevent making the same mistakes or extra work over and over again. Here is how this problem can be tackled.Read the post
I am extremely fascinated with a container-based approach. I try to ship every application as a Docker container because in this case, the application becomes an infrastructure provider agnostic. So this time we will see how to deploy a dockerized application to Heroku — a famous cloud platform.Read the post
In the previous article we discussed how to set up Apollo with Serverless. Now we talk about how to put the DynamoDB database behind that Apollo client.Read the post
08.01.2019
How to use React HooksIn the previous article, we have discussed how to use Serverless locally with Webpack and then deploy it to the AWS cloud. Today we talk about how to spin up Apollo GraphQL server inside a lambda function.Read the post
I am sure many of us know about Serverless. For those, who is not familiar: Serverless is a system architecture concept which allows us to put our backend code into the cloud.Read the post