$ cd ~
Home
Blog
Projects
Skills
3D Art
About
Contacts
Home
Blog
Projects
Skills
3D Art
About
Contacts
Blog
26.11.2024
The False Gods of Refactoring
A while ago I worked on just another task, and while being constantly overwhelmed with the amount of...
11.11.2024
The ultimate interview preparation framework. Part 5: Cultural fit
So you have made this far, successfully passing the initial screening and two technical interviews....
07.11.2024
Design Docs to help streamline the development
Shortly after I joined my current team, I realised there was something wrong with the way the...
17.08.2024
The ultimate interview preparation framework. Part 4: System design
The next part of the Ultimate interview preparation framework demystifies the system design...
15.06.2024
Managing time in distributed systems
A while ago I faced timezone issues in my job project... again. This was a bitter consequence of...
20.05.2024
The ultimate interview preparation framework. Part 3: Data Structures and Algorithms
Modern companies that do not do rocket science more and more often avoid DSA interviews. It is...
19.04.2024
Emergency handling protocol
Pushed for feature development under a tight deadline, deployed to live and alerts went crazy....
15.03.2024
How modern DevOps is done. Part 2: wiring up CI/CD!
In the previous article I have covered the process of Docker image building, and then pushing it to...
28.02.2024
Handling errors in a Go based microservice
In one of my application there was a total mess with error handling. Any wrong situation was treated...
19.12.2023
Leveraging WASM to write isomorphic Golang ➡️ JavaScript library
When I was a JS/JS developer, I was always proud of the ability of JS to run in both NodeJS and in a...
14.11.2023
Create database fixtures for unit testing: a Golang kata
In todays brief kata I wanted to share my views on how fixtures for unit tests must be managed....
09.11.2023
The hooks pattern in Go: a Golang kata
Not so long ago I had to solve a performance issue. When reading an enormous amount of records I had...
24.10.2023
Accessing GCP BigQuery: a Golang kata
Recently I got a task of scraping some data from one of our BigQuery tables. It could be easily done...
01.09.2023
Dependency management for the dependency injection pattern: a Golang kata
I made a kata on the dependency injection pattern before. The way I managed the dependencies was...
15.08.2023
Scripting for better devops: a Python kata
I like automating things, so I try cutting edges where possible. One of the tiny annoying troubles...
09.08.2023
The ultimate interview preparation framework. Part 2: Initial screening with a recruiter
So, a recruiter gave you a call, or wrote you an email asking to fill some Calendly slots up, and...
07.08.2023
SQL patterns, tips and tricks
I do not face SQL challenges every day. Sometimes I find a good solution for a case I had to crack,...
13.07.2023
Every day Kubernetes
In this article I will post kubectl commands and Kubernetes tricks I use as part of my daily...
19.06.2023
How modern DevOps is done. Part 1: containers and repositories
I am a fullstack developer, and yet my knowledge of DevOps is still kinda fragmented. So I have...
09.06.2023
Go multithreading with go routines, channels and waitgroups: a Golang kata
It is a well-established fact, that Chuck Norris counted from zero to the infinity. Twice. Today I...
15.05.2023
Converting materialized paths into a tree with generics: a Golang kata
I have finally switched over to go1.20, so it is time to start making use of generics. So here comes...
13.05.2023
Distribute your CLI application in just a few simple steps
Lets say you made an amazing CLI tool that will for sure change the world one day, and make you a...
22.04.2023
Making an IoT smart home device scanner using Flutter
In the previous article I made an Arduino-based weather indicator, a dream of my childhood. Since it...
03.04.2023
Making a weather indicator with Arduino
This time I will wire the LED driver up with a weather API, so it could actually bring some...
31.03.2023
Top 10+ rules every successful engineer should follow
Do you recall that guy from a movie called "Zombieland", who used to have survival rules? Well, it...
24.03.2023
Layers of abstraction and Gorm: a Golang kata
It is Friday, and it means the time has come for another Golang kata! This time I am gonna explore...
15.03.2023
TM1637 LED driver meets Arduino: detailed explanation
For a software engineer once in a while it is good to make something that you can actually hold in...
07.03.2023
Google PubSub and Go: a Golang kata
Time for a new Go kata, a really brief one! This time, I have decided to refresh my knowledge on the...
31.01.2023
Ultimate checklist for a newly joining fullstack software engineer
I was working as a front-end engineer for a quite while, so when I was back to fullstack, it took...
22.12.2022
Copy data between databases: a Golang kata
This time I had a task to copy data between two database instances, potentially with some intricate...
10.12.2022
Building scalable and safe infrastructure layout with Terraform
In every progressive organisation infrastructure is defined as code and maintained automatically. If...
23.11.2022
Look at unit testing in Golang through the eyes of a front-end engineer
In this article I am gonna share my learning regarding unit testing in Golang, and how it is...
20.11.2022
Download a remote file and store to a GCP bucket: a Golang kata
Not so long time ago I was assigned to build a feature for copying a remote file into our own GCP...
02.11.2022
Counters done right with a relational database
One lovely monday morning you are assigned to develop a list of task groups with counters: how many...
26.09.2022
Making an interactive browser-only React playground, from scratch
Back in times when I was working on a design system, I had to build a lightweight interactive demo...
30.05.2022
Battle-tested technical interview plan for Lead Engineers
A few days ago I have conducted my 16th technical interview. After a while, I have come up with a...
23.01.2022
The ultimate interview preparation framework. Part 1: Before it all starts
Finding a new place in a worthy company is not an easy thing to do. If you already have a company on...
27.08.2021
To AST and back: magically crawl and transform your code with TypeScript API
Some time ago I was solving a challenge. I had to write an application that crawls code and reports...
11.05.2021
Create a contact form with React, AWS and Terraform, and pay 0$ for everything: Part 1
One fine day I have decided to have a contact form for one of my Jamstack-based websites. The goal...
12.12.2020
Highly reusable React component boilerplate for your design system
While working on a design system, I have experimented a lot, and came up with a quite promising...
23.10.2020
Baremetal Kubernetes with kubeadm in 10 minutes? Easy!
A while ago, being on sick leave, I challenged myself with setting up a baremetal K8s cluster. I...
26.09.2020
You probably don't need extra tools to connect Google Forms to your Slack channel
One day came, and I have faced a challenge of how to post a new message on Slack when someone...
12.09.2020
How I automated day to day GitHub routine with GitHub Toolbelt
Time is not money. Time is a more precious thing. After getting tired of constant misclicks and...
11.08.2020
My ultimate list of awesome opensource projects
This is a constantly work-in-progress list of cool project I have encountered or worked with....
15.07.2020
How I migrated from Redux and Saga to MobX and became a happier person
For quite a while I was using Redux together with Redux Saga and was satisfied. Well, sort of,...
10.06.2020
My collection of JS/TS snippets
Here I have a collection of useful JS/TS snippets used in profession day to day work routine...
04.06.2020
My TypeScript cheat-sheet
In this article I will keep collecting all the tricks I have learned so far, as well as any cool...
03.06.2020
My Shell Script cheat-sheet
Can't say I use shell scripting a lot, but when I do, I always struggling with remembering certain...
02.06.2020
My CLI cheat-sheet
There are some things that can be useful to me, but I totally keep forgetting the syntax. And I am...
14.05.2020
How to calculate actual color for opacity on white background
From time to time I observe designers making derivative colors by applying opacity to a base color...
22.04.2020
How to set RaspberryPi up for NodeJS projects
After failing to find a complete and correct guide on how to set up RaspberryPi4 for NodeJS...
25.02.2020
How to make a code generator in 5 minutes (or less)
Every software engineer and every company at some point tries to preserve the knowledge of best...
17.07.2019
How to deploy an application to Heroku using Docker
I am extremely fascinated with a container-based approach. I try to ship every application as a...
25.01.2019
How to use DynamoDB with Apollo GraphQL and NodeJS Serverless
In the previous article we discussed how to set up Apollo with Serverless. Now we talk about how to...
08.01.2019
How to use React Hooks
React 16.7.0 is finally out. It has no hooks on-board, but sooner or later, React Hooks will be...
28.12.2018
How to use GraphQL Apollo server with Serverless
In the previous article, we have discussed how to use Serverless locally with Webpack and then...
25.12.2018
How to use Serverless with Webpack and Docker
I am sure many of us know about Serverless. For those, who is not familiar: Serverless is a system...
16.12.2017
My recipe for making Meteor project deployment in Centos 7 environment
This is a story of how I am going to tell you a story about how I prepare the production environment...