Hello, I’m an engineer and I like to build systems.
Contacts & Info
Location: Russian Federation, Saint-Petersburg
- web: agrrh.com
- github: github.com/agrrh
- telegram: @agrrh
- email: [email protected]
Professional skills
Experienced with orchestration, clouds, IaC concepts, CI/CD stuff.
My main proficiencies are:
- General orchestration: Kubernetes, Nomad
- Cloud Infrastructure: AWS, Terraform
- Overall DevOps / Platform approach
Actual technical stack
List of technilogies I worked with, grouped in domains.
Keywords are ordered from well-known to rarely used.
cloud:
- aws:
- well-organized Accounts and VPCs
- EC2, RDS, ElastiCache, Route53, S3, CloudFront
- China
- gcp:
- oci:
- digital-ocean:
- hetzner:
iac:
- terraform:
- reusable code, modules
- atlantis
orchestration:
- kubernetes:
- production stuff
- eks, gke, kubespray, microk8s
- helm, kustomize, raw manifests
- argocd, google config sync
- karpenter, keda
- external-dns, cert-manager
- ...
- containers:
- dockerfile best practices
- ❤️ hadolint
- advanced stuff like kata containers
- nomad:
- production stuff
- some experience like canary deployments
- integrated with Consul, Vault, also Levant
configuration:
- ansible:
- static/dynamic inventories
- diving into ansible's source code
- molecula
- fabric:
- salt:
development:
- python:
- flask, fastapi
- cli tools
- kubernetes controllers
- ❤️ pep8, black
- golang:
- cobra
- echo framework
- kubernetes controllers
contnuous:
- gitlab:
- parametrized pipeline templates
- downstream pipelines
- containerized runners with S3-shared cache
- github actions:
- drone:
- concourse:
- travis:
observability:
- grafana:
- dashboards development and management
- templates, variables
- prometheus:
- custom exporters
- alertmanager rules
- federation
- loki:
- vector:
- influx:
- elk:
databases:
- mongodb:
- sharded cluster with replicated shards
- investigations on failures and performance issues
- mysql:
- some replication tasks
- postgresql:
- redis:
- clickhouse:
queues:
- nats:
- kafka:
- rabbit:
web:
- traefik:
- haproxy:
- nginx:
random:
- >
cat, tac, sort, uniq,
cut, grep, sed, awk,
ngrep, iperf, df, free,
top, htop, atop, ifstat,
ss, strace
- tcpdump, wireshark, ngrep
- iptables, ferm, ipvs
- etcd, consul
- vault, sealed-secrets
- wireguard, openvpn
- restic
- taskfile
- skaffold
Experience
SRE Engineer at Avito.ru (2023 - …)
Major goal: design and implementation of cluster-wide health checks system for tens of clusters.
Development in Golang/Python: APIs, system tools, features, bugfixes, tests.
Work on issues related to k8s: ArgoCD, Helm, various controllers and webhooks, even puppet stuff.
Work on team’s processes, e.g. implemented automated tasks scoring system.
Even took part as frontend engineer when project needed it.
Software Engineer at Tutu.ru (2022 - 2023)
Writing Golang/Python code for Infrastructure Platform team, making developer experience better.
Lead Engineer at Nexters (2021 - 2022)
GameDev company.
Engineering culture:
- Introduce and promote platform approach
- Promote IaC and Everything-as-code approach
- Implement some CI/CD, linters and other stuff over infrastructure
- Produce documentation and screencasts on common tasks
Design and implement unified platform offer for number of teams:
- Build and maintain 12 EKS clusters plus tech strapping
- Implemented ArgoCD as main CD tool for product teams
- Some other components are traefik, vector, loki, prometheus, alertmanager
- Also introduced shared CI/CD pipelines and Helm charts
RnD towards:
- OPA/Gatekeeper to implement policy-driven best practices
- Crossplane to ease routine tasks such as S3/RDS deployment
- Service registry/catalog
DevOps Engineer at Netology (2020, short-term)
Company running education programs.
My responsibility was migration of company’s product from “snowflake” dedicated servers to Openstack VMs with IaC approach.
Also, I did some monitoring and CI activities.
Lead Engineer at Playkot (2018 - 2020)
- Migration from dedicated servers to Kubernetes, Nomad and VMs
- Deploys, backups, observability and automation in general
- Developed few useful tools and services
- Covered huge part of mission critical stuff with metrics and alerts
- Built common process on solving projects requests, thus provided some grade of prediction, planning and knowledge sharing
- Spreaded some vital techs and practices over a company, has been in charge of tech-talks
- Filled up vacancies, interviewed applicants
DevOps Engineer at Ad Networks (2015 - 2017)
NDA company which later evolved to Roxot.
- Maintained prod and staging environments of ~100 virtual hosts
- Built monitoring and logs collections systems
- Developed some tools and APIs, for example, to manage private DNS zone
- Covered almost 100% of host and services with Ansible code
- Started interaction with development teams
Linux SA at Yandex (2014 - 2015)
Yandex is leading Russian Federation web-search engine.
- Developed and integrated semi-automated system of crash dumps collection
- Actively participated at the migration from Salt to Ansible
- Co-working with developers to resolve deploy-related issues
- Monitoring of 600+ hosts, both virtual and hardware
- Faulty disks replacements, DNS zone control, escalation of network problems
Head of Technical Support department at FastVPS (2012-2014)
FastVPS is a Hosting Provider with data-centers at Estonia and Germany.
Started as junior support specialist, left as head of department.
As technical support specialist:
- Managed dedicated servers and OpenVZ containers
- Assisted in mitigation of HeartBleed bug for 2000+ customers
- Developed automated diagnostic system
As head of department:
- Resolved L2-L3 technical issues
- Managed the team, planned working schedule, vacations
- Interviewed applicants
Education
- 2009 .. 2011 - IT in Education specialist, Herzen University
- 2007 .. 2009 - Physics and Optics specialist, ITMO University
Languages
- Russian - mother language
- English - comfortable in discussions around tech domains, almost helpless when it comes to Shakespeare :)