Posted on

Beginning

I've never thought that my life would be closely related to IT. During my school years, I attended an art school and thought I was going to be an architect. In my final years of school, I studied for the physics exam and architectural entrance exams. Nevertheless, in my senior year, I decided to pass the informatics exam—just for fun. However, a few days before the entrance exams, I caught myself thinking that architecture was perhaps not for me. Despite these thoughts, I didn't give up and went to take the exams. I tried, but it was not enough.

After the results were announced, I was faced with a choice: to study civil engineering or applied mathematics and computer science. If you've seen my CV, you probably know my decision. So, I decided to pursue computer science.

I've never once regretted the choice I made.

During my bachelor's degree, I studied the basics of programming and a significant amount of math. After my first internship, I decided that I wanted to be a programmer. During this internship, I wrote a plugin for Aveva PDMS in C# and WPF. However, the knowledge I received during my bachelor's studies was not enough for me, so I decided to pursue a master's program.

And that’s when the real journey began.

R&D Time

At my first open house at Peter the Great St. Petersburg Polytechnic University (SPbPU), I met the head of a department who later became my supervisor for my master's thesis.

Siemens

After the first semester, we received an R&D grant from Siemens. The goal was to investigate the possibility of using artificial neural networks to search for clones in source code.

This project is detailed here.

Polyphone

Around the same time, at the beginning of the second semester, I met my best friend ejiek (check out his page), and we started our coursework project.

Our task was to construct our own smartphone. However, the main limitation was not to use any Android-compatible hardware. So, we used a Raspberry Pi Zero W as the main module along with numerous auxiliary modules.

It was a fun and interesting project.

This project is also detailed on its own page.

Many days and nights were spent on this project, but unfortunately, it has remained at the Proof of Concept (POC) stage.

Huawei

This R&D project was also led by my supervisor.

However, on this project, I was more of a tech lead than a developer. The project was sponsored by Huawei.

There, we developed an algorithm that could help detect redundant generated test suites and reduce them.

This project is detailed on its own page.

Industrial Systems for Streaming Data Processing

This project was with an outsourcing company affiliated with SPbPU.

We worked on a variety of projects, ranging from the development of an information system for developers to the automatic analysis of "Morris Water Maze" behavioral test data. This experience was invaluable, acting like a sandbox where we were not limited by the tech stack or technologies. The main focus was to achieve tangible results.

I believe some of these projects can be found on their respective pages in the projects section.

Platform Time

Currently, I am leading the Platform Team at CS.Money, where our main goal is to make developers' lives better and easier. Not every developer may agree with that statement, but we are striving to achieve it.

Here, we engage in various tasks, such as implementing Zero Trust, developing libraries that simplify the deployment of different projects, and easing the maintenance and configuration of applications. I believe some of my future articles will, in one way or another, relate to the work done within the Platform Team.

Ricing

Thanks to my best friend, I started using Linux as my main operating system. I've used Arch, by the way. Right now, I'm using NixOS.

I became immersed in the world of Linux ricing.

I've started using and customizing:

  • Tiling window managers:
  • Rust-written and GPU-rendered terminal emulator - Alacritty
  • Vim-based text editors:
  • Vim-based navigation
  • etc.

All my current configurations can be found here. My previous configurations are stored here.