< ALEKSANDR GRIBAKIN />
Lead Full Stack & DevOps Engineer
15 Years in Code
Fifteen years building and scaling distributed systems, across the industry's move from bare-metal servers and monoliths to cloud-native, Kubernetes and GitOps. I take on the work teams postpone: paying down technical debt, building deployment from nothing, and keeping systems running.
Kubernetes
Terraform
Docker
GitLab CI
PostgreSQL
Go
Node.js
█╗ █╗ █████╗ █████╗
██╗██╗██╔══██╗██╔══██╗
█╚███╔╝███████║██║ ██║
█║╚██╔╝ ██╔══██║██║ ██║
█║ ╚═╝ ██║ ██║██████║
╚═╝ ╚═╝ ╚═╝╚═════╝
██╗██╗██╔══██╗██╔══██╗
█╚███╔╝███████║██║ ██║
█║╚██╔╝ ██╔══██║██║ ██║
█║ ╚═╝ ██║ ██║██████║
╚═╝ ╚═╝ ╚═╝╚═════╝
ACCESS GRANTED
──────────────────────────────────
[ OK ] Connection from: detecting...
[ OK ] User-Agent: detecting...
[ OK ] Session started: detecting...
[ INFO ] Target: Lead Full Stack & DevOps Engineer
──────────────────────────────────
visitor@portfolio:~$ stats --breakdown
visitor@portfolio:~$
The Work in Numbers
Career Timeline
Reference Architectures
How I approach these kinds of problems — the method, not a client list
Migration
Bare-Metal to Hybrid Cloud
Terraform, Ansible, AWS, GCP, Linux
△ 30-40% cost cut / staged cutover
Moving off servers you own and pay for whether or not they are busy. Done in stages — take stock, match the new setup to the old, then move traffic — so the business never rides on one big switchover night.
Platform
Kubernetes Platform
Kubernetes, Helm, ArgoCD, Terraform, Prometheus
△ 99.9% uptime / self-serve namespaces
Shared infrastructure your developers can use without first becoming infrastructure specialists. They ask for space and get it already set up, so new work starts the same day instead of waiting on someone else.
IaC
Infrastructure as Code Baseline
Terraform, Ansible, GitLab CI, Vault, Linux
△ 100% reproducible / 3 environments
Every server described in a file, so any of them can be rebuilt from nothing in minutes. Nothing depends on one machine nobody dares touch, or on what somebody changed by hand two years ago and did not write down.
Tooling
Local and Production Parity
Docker, Docker Compose, Terraform, Make, Linux
△ One image / 4 environments
A developer’s laptop, the test system and the live one all run the same thing. That removes an entire category of delay: bugs that appear only after release, which nobody can reproduce and everybody has to guess at.
Delivery
Standardised Delivery Pipelines
GitLab CI, Jenkins, Docker, Helm, GitHub Actions
△ 15 min release / dozens of services
One release process shared by every part of the system, instead of each team maintaining its own. Shipping a change goes from a planned multi-day operation to about fifteen minutes.
Deployment
Zero-Downtime Deployment
Kubernetes, ArgoCD, NGINX, Helm, Prometheus
△ Zero downtime / 90s rollback
Updates go out without taking the service down, and a release that starts misbehaving is pulled back automatically before most customers see anything. No more maintenance windows announced in advance.
GitOps
GitOps Delivery Model
ArgoCD, Git, Helm, Kustomize, Kubernetes
△ Git as source of truth / auto-reconcile
One written record of how the system is supposed to be set up, and the system corrects itself back to it. Changes made by hand at three in the morning do not survive to become next month’s mystery.
Architecture
Monolith to Services
PHP, Symfony, Go, gRPC, RabbitMQ
△ Incremental cutover / no freeze
Splitting one large aging system into parts that can be worked on separately — while it stays open for business the whole time. No freeze, and no rewrite-from-scratch project that runs two years and delivers nothing.
API
API Layer and Contracts
Node.js, TypeScript, OpenAPI, gRPC, NGINX
△ Generated clients / versioned contracts
A written agreement about how the parts of your system talk to each other, generated from one source. When someone changes something incompatible, it fails on their screen during development rather than for a customer.
Queues
Async Job Processing
Python, FastAPI, Celery, RabbitMQ, Redis
△ Idempotent retries / DLQ triage
Slow work — reports, imports, emails, payment callbacks — moved out of the customer’s way so pages stay fast. Anything that fails is retried safely and, if it keeps failing, lands somewhere a person actually looks.
Database
PostgreSQL Under Load
PostgreSQL, PgBouncer, Patroni, Prometheus, Linux
△ Read scale-out / partitioned writes
Making the database keep up as the data grows, usually by finding out what it is actually doing rather than by buying a bigger machine. Cheaper than hardware, and it lasts longer.
Caching
Multi-Level Caching
Redis, NGINX, CDN, Node.js, PostgreSQL
△ 4 tiers / explicit invalidation
Keeping ready-made answers close to the visitor so pages load fast and the servers do less work. Each layer has an explicit rule for how stale it may be, so nobody is ever shown an old price.
Search
Search and Document Store
Elasticsearch, MongoDB, Python, Kafka, Redis
△ Live reindex / change-stream fed
Search that finds things by meaning rather than exact wording, and stays current as the catalogue changes. Rebuilding the index happens while the site is open, not overnight with the service down.
Web
SPA with Server-Side Rendering
React, TypeScript, Vite, Node.js, NGINX
△ SSR first paint / typed end to end
Pages arrive already drawn, so visitors see content immediately and search engines can read it — then behave like an app once loaded. Fixes the common problem of a site that ranks badly because it is empty until scripts run.
Design System
Component Library
Vue.js, TypeScript, Webpack, Storybook, CSS
△ 40+ components / WCAG AA
One set of buttons, forms and layouts that every page is built from. New screens get assembled instead of drawn from scratch, they look consistent by default, and people using screen readers are not an afterthought.
Monitoring
Observability Stack
Prometheus, Grafana, Loki, Elasticsearch, Alertmanager
△ Correlated signals / SLO-based alerts
Knowing what the system is doing, and being able to follow one customer’s request all the way through when something goes wrong. The difference between "the site feels slow" and knowing which step is slow, and why.
Process
Incident Response
Grafana, Alertmanager, Ansible, Git, Linux
△ Owned rotations / current runbooks
A clear answer to who is woken up when something breaks at night, written instructions that match reality, and a review afterwards that produces a fix rather than a culprit.
Professional Milestones
Six shifts the industry has since packaged and sells ready-made. I worked through them before anything was ready-made.