About me

My name is Alexander, i’m 25 years old. I started my path as developer from Pawn and PHP, grew up to NodeJS, now i’m mostly writing Golang.

Languages

  • Russian - Native
  • English - B2

Skills

  • CI/CD
  • Linux
  • Postgres
  • SQLite
  • MongoDB
  • Node.js
  • Redis / Redis PubSub
  • Git
  • TypeScript
  • Docker
  • Docker Swarm
  • RabbitMQ
  • Nats.io
  • GRPC
  • WebSockets
  • Graphql (partly)
  • Golang
  • Vue

Possible roles

  • Node.js developer
  • Golang developer

Career

  • GetTransport (10/2019 – 10/2020) Node.js software engineer.
  • X5 (03/2021 – 12/2021) Node.js software engineer.
  • altMP Team (05/2023 – now) Golang/Node.js software engineer.

Projects that I’m working/worked on

Notifier: notifications about live translations to messengers (github.com)

Platform for notifying users about their favourite bloggers went online on their streaming platforms. More than 500 daily users and still growing.

I implemented a queuing system via Rabbitmq, optimised the load and implemented caching.

Technologies used:

  • Golang
  • Redis
  • Postgres
  • Docker
  • Git
  • Make

TwirApp: platform for help twitch streamers manage their broadcasts (github.com)

First of all, it is a chat bot, but the product does not end there. It helps streamers to create hgihtly customizable interactive systems, with overlays, streaming software, chat, discord interactions.

I started the project as a single-process node bot, but then there was a desire to develop it into something more, to test my skills. I started implementing microservices based on Nest.js, gradually breaking down pieces of functionality into different services and microservices.
Communication between the services was via TCP, then I wanted to use some sort of queuing system, so I implemented nats.io.

From the beginning of the project I used caching, authorisation and authentication techniques in my API.

At some point I wanted to try my hand as a Golang developer and started to convert parts of the system to this programming language.
I really liked the language because of its simplicity, the model of working with competitive programming, the ability to compile into a binary file and the ease of deploying the application to servers.
So now most of the services in the project are written in this wonderfully simple language.

I’ve tried an incredible amount of technology that’s hard to describe in text, so here’s just some of what I’ve used (and continue to use)

Technologies used:

  • Github actions (CD/CD)
  • Node.js
  • TypeScript
  • Golang
  • Redis
  • Redis PubSub
  • Postgres
  • Docker
  • Docker Swarm (Deploy and orchestration)
  • Git
  • Make
  • Redis
  • RabbitMQ
  • Nats.io
  • GRPC
  • WebSockets
  • Webhooks
  • OAuth

Libraries used:

  • Nest.js
  • Vue
  • React
  • Twirp (grpc alternative)
  • SQLX
  • PGX
  • GORM
  • TypeORM
  • PrismaORM

Conclusion

I have described only some of the applications I have worked on.
Many of my projects remain private, so I can’t describe them here. As you can see in my career - there is a small gap due to working for myself, working on myself, freelancing.