Hello, I am Ilya 🎧
Before MTS, I made a data-intensive cloud-native ETL service for a job search company, led the development of several enterprise tools for Deutsche Telekom, and did less flashy projects. Also, I am a remote-first advocate and have been working remotely since 2017.
My love of continuous learning has led me to a Ph.D. in engineering and a master’s in management.
Also, I’m into coffee and motorcycles.
Distributed systems are complex and fragile. I will design a robust system around the business requirements and specifics of the cloud or hybrid infrastructure.
Migrating to the cloud from an on-premise environment is a complex, multi-step task. I will plan the migration correctly and perform it without interrupting the services and the team.
A cloud environment requires the implementation of DevOps practices and proper maintenance. I will make cloud systems robust and reliable, and billing obvious and expected.
Companies waste money because of sub-optimal software development and support processes. I will implement effective workflow practices and automate routine operations.
Practical Use of Finite-State Machines
This is the first article in a series dedicated to FSM usage in distributed system architecture. We will talk about domains, transactions, and sagas. But let’s start with the basics. Finite-State Machine When we think about the finite-state machine, we probably imagine some computer science-related entities, math, and diagrams like that: Besides scientific language, a finite-state machine is a final set of states and the transitions between them. When it comes to real engineering, states are a set of consistent states in which the model can be.
Go-Swagger Tricks. Standard HTTP handler
Hey, reader! Maybe you had tried go-swagger library so far. If yes, you may notice that sometimes it’s not so easy to use. And it may look a bit complicated to start using it. In this number of small articles, I will share my experience on how to make go-swagger more friendly. Let’s start. Handling requests in go-swagger By default, go-swagger generates a specific handler type for each endpoint in your Swagger scheme - that is, you will get a code-generated structure with all import parameters kindly parsed for you and a number of responders for each response type (with pre-generated structures as well).
How I write my unit tests in Go quickly
We all love unit tests because they help us to keep our software workable. And we all hate them because they don’t appear magically - someone needs to write them. And when it comes to writing, it often takes a huge amount of time to cover the simplest cases. But I found my way to do that without pain (okay, with less pain). And I will share it with you like a simple illustrated guide.