Team Lead in the full-remote team of six engineers
(3 countries, 5 cities, 4 timezones)
- Email: [email protected]
- Now in: Lisbon, Portugal
(Hidden due to NDA)September 2019 - Present
Role: DevOps Engineer -> Senior DevOps Engineer -> Lead DevOps Engineer
Big blockchain company with strict availability and fault tolerance requirements.
- Planning working processes;
- Distribution of tasks within the team;
- Project architecture design;
- Task prioritization;
- Mentoring of new employees;
- Installation and configuration of servers and software for highload & high availability platform;
- Monitoring of equipment and services (Grafana, Prometheus, Alertmanager, Zabbix);
- I wrote Ansible roles for Grafana, Alertmanager, Webhook;
- Ansible with dozens of roles;
- Network things (Cisco)
- CI/CD for fault tolerance/zero downtime platform;
- I wrote a lot of gitlab-ci files;
- I optimized building process for Go-applications;
UmbrellioMay 2018 - August 2019
Role: Site Reliability Engineer
- Installation and configuration of servers and software;
- Monitoring of equipment and services (Grafana + InfluxDB + Telegraf, Nagios);
- Setting up tools for monitoring;
- I deployed grafana;
- Optimize performance, troubleshoot problems, eliminate denial of service;
- Solving problems on security and scalability of systems;
- Ansible with six different roles for servers configuration;
- Gitlab CI for deploy nginx and firewall configs;
- I wrote Gitlab CI for autorun Ansible playbooks;
- ELK stack and Graylog
- I deployed ELK + Graylog and configure it for highload system;
- PostgreSQL like a master;
- Nginx like a ninja;
- I oprimized Nginx for high-availability system and fix some problems with logs in files
- CentOS like a boss :)
PlaykotAugust 2017 - May 2018
Role: Ops Engineer
Playkot is a Russian game studio which makes games for social networks and mobile devices.
- AWS & Terraform;
- Technical consultation of the company's employees;
- Making office IT better;
- Maintenance of game servers;
- TeamCity, Jira, Confluence, GitLab, etc. - install and configure;
- PPTP, L2TP servers;
- Grafana + Prometheus - install and configure.
SelectelFebruary 2017 - August 2017
Role: System administrator
The largest Russian IaaS-provider.
Services: colocation, dedicated servers, cloud storage, virtual private cloud, content delivery network, etc.
- Technical consultation of the company's customers;
- Linux administration;
- Juniper and other network equipment administration;
- Network and infrastructure monitoring.
Question: Why did you work here after such a long break?
Answer: I quit to go on a round-the-world trip, and when I returned, I was called back.
SelectelJanuary 2015 - October 2016
Role: Datacenter Systems Engineer
Company description: See above!
- Monitoring of servers, network equipment and air-conditioning system (1 server room, 211 racks, ~6000 servers, ~500 units of networking equipment);
- Switching and laying optical and copper networks;
- Servers maintenance (Dell, IBM, Supermicro, etc.);
- In addition to the main work, I made front-end for the corporate time tracker system.
- I sprinkled my blood on the k-root dns (It's not a joke, I really cut myself on the edge of the case and a drop of my blood hit the motherboard. Here is the link for the article in Selectel's blog about k-root node)
Improvy is my own side work, which I developed for a long time in my free time.
During this time I developed several large projects:
Role: Owner, DevOps Engineer, Full-stack developer (PHP, Python, Node.js, MySQL, Redis, RabbitMQ, FastText)
Fullyst is an awesome Telegram bot for chats and users analytics and displays nice charts. My first international project, which is used by people in more than 12 countries.
In 2020 I decided to start my own business based on this project.
- More than 4 000 000 users;
- More than 11000 chats in monitoring;
- More than 150/rps (RX), 100/rps (TX);
- Real-time (<500ms for processing) message parsing (language, topic, communication mood, common info).
- Some additional details:
- Main programming language for the website - PHP;
- 30 background workers - Python & RabbitMQ;
- Language and sentiment recognition - Python (FastText);
- Additional ML operations - Python, Node.js.
Role: Owner, DevOps Engineer, Full-stack developer (PHP, Python, MySQL, RabbitMQ)
During the war, lies of Russian propaganda and the Russian war censor, I decided that I needed to help everyone get free access to the information, so I made this Wireguard-based VPN solution. It has some interesting python-scripts on the backside. Later I'll publish it on Github.
Role: DevOps Engineer, Backend-developer (PHP, MySQL, Redis, Gearman)
The MusicBot is piracy! The bot can find and download any song for free.
- More than 20,000 users;
- More than 120,000 queries per day.
Unfortunately, the API service we used was closed, so I had to close the project.
Role: DevOps Engineer, Full-Stack developer (PHP, Python, MySQL, Redis, RabbitMQ, jQuery and more)
My first serious project. FairTop is Minecraft's servers rating and useful tools for server's owners.
- More than 1,000 game servers registerd;
- More than 30,000 MAU;
- Around 300,000 page views in month.
I decided to concentrate on the FullyStat, because it's more promising.
Ansible role for Nebula
Nebula is a scalable overlay networking tool with a focus on performance, simplicity and security (by Slack). And this ansible role for deploy nebula regular node and lighthouse node.GitHub repository
Ansible role for Wireguard
Wireguard is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPsec, while avoiding the massive headache. And this ansible role for deploy wireguard for hosts in your inventory.GitHub repository
Small Python-based project which provides a simple uploader proxy for upload files to the Google Cloud Platform Storage (+Docker environment for fast start)GitHub repository
Progress: I began to study HTML and CSS, the first rework of templates for sites.
Secondary special education student
Progress: Linux becomes my main operating system on my home computer.
Progress: Nothing new. I continue to study Linux, HTML and CSS
Progress: Made my first template for smarty-based website
Student & a technician in my school
Progress: Server use of Linux, I began to study nginx, PHP & MySQL. I launched my first project, which I programmed myself.
Datacenter Systems Engineer in Selectel
Progress: Deep study of networks and network equipment, professional Linux study. Began using Git for Improvy's projects.
Datacenter Systems Engineer in Selectel & at the end of the year Freelancer
Progress: Began to study Python and Redis.
System administrator in Selectel -> Ops Engineer in Playkot
Progress: Began to study Docker and Libvirt.
Ops Engineer in Playkot -> Site Reliability Engineer in Umbrellio
Progress: I strengthen my knowledge in automatization & CI/CD.
Site Reliability Engineer in Umbrellio -> DevOps Engineer in (Hidden due to NDA)
Progress: Work with highload projects in enterprise environment, virtualization, IT security and autodeploy bare-metal servers.
Still DevOps Engineer in (Hidden due to NDA)
Progress: Work with highload fault tolerance platfom in enterprise environment, virtualization, IT security, autodeploy bare-metal servers, CI/CD with zero downtime.
Middle DevOps Engineer in (Hidden due to NDA) -> Senior DevOps Engineer in (Hidden due to NDA) ->
Progress: Became senior DevOps after a performance review. Mentoring of new employees, work with highload fault tolerance platfom in enterprise environment, virtualization, IT security, autodeploy bare-metal servers, CI/CD with zero downtime.
Senior DevOps Engineer in (Hidden due to NDA) -> Team Lead DevOps Engineer in (Hidden due to NDA)
Progress: Became Team Lead DevOps. Planning working processes, distribution of tasks within the team, project architecture design, tasks prioritization, mentoring of new employees, work with highload fault tolerance platfom in enterprise environment, virtualization, IT security, autodeploy bare-metal servers, CI/CD with zero downtime.