Skip to content
View sokolovgit's full-sized avatar
💅
💅

Highlights

  • Pro

Block or report sokolovgit

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
sokolovgit/README.md
Hi, I'm Oleksandr — middle backend engineer at OBRIO

Middle backend engineer at OBRIO · 4th-year Software Engineering student at KPI FICE · Kyiv, Ukraine

Telegram LinkedIn Email

About

Pixel-art bonsai grown from my commit history

I work on the microservice backend of a consumer product with 70M+ users: TypeScript and NestJS mostly, some PHP and Python, everything talking over RabbitMQ and running on Kubernetes. Over the last year and a half I've worked across 40 services, owned epics end to end, and taken backend on-call shifts.

Selected work

The code is private, so here's what it was about.

  • AI merge-request reviewer. On my own initiative, I turned our in-house Slack AI assistant into a reviewer for merge requests. Unlike the off-the-shelf review tool we already used, it has context across the whole system and its integrations, so it reviews a change against everything that change touches. It is also much cheaper. It runs on a deterministic retrieval step plus a single model call, and now reviews MRs for the backend, frontend and mobile teams.
  • GDPR data deletion. Event-driven hard delete across 10+ services and third-party providers, including backfilling users who were deleted before it existed.
  • Data contracts. Contracts between backend and data engineering, loaded at runtime and validated without blocking the event flow, with alerts routed to owners.
  • Attribution pipeline. Tech owner of an event-tracking and marketing-attribution pipeline handling ~350k events/day, from requirements and capacity planning to k6 load tests and production verification.
  • Breaking up the monolithic BFFs. I started by helping move the funnels' backend out of a monolithic BFF into microservices. Then I worked on splitting up the SPA's BFF, where I built a new stateless service along the way. Now I lead that decommissioning: mapping the coupling first, then moving routes and events out consumer by consumer, without downtime.
  • Split-testing service. Built from scratch. It merges anonymous and logged-in assignments and stays race-safe through atomic upserts and partial unique indexes.
  • Search. I was the first on the team to bring in OpenSearch. I delivered full-text search, async indexing over RabbitMQ, and index migrations with zero-downtime reindexing through aliases.
  • Platform work. A shared RabbitMQ topology module adopted by 8+ services, a NestJS 11 / Express 5 / Node upgrade, a CVE-patching policy, log and trace masking, and Grafana dashboards as code.
Production investigations I enjoyed
  • Pods killed under CPU limits, traced back to synchronous code blocking the event loop.
  • A file-descriptor leak in a native library that left one open handle per worker thread.
  • Redis OOM kills caused by a bulk operation rewriting the same 16 MiB key dozens of times.
  • A quarter of a service's logs silently dropped by an Elasticsearch dynamic-mapping conflict.
  • Webhook delays of 30–60 minutes that turned out to be CDN-level traffic re-steering, after ruling out four other hypotheses.

Stack

TypeScript, NestJS, Node.js, PHP, Symfony, Python
RabbitMQ, PostgreSQL, MongoDB, MySQL, Redis, Elasticsearch
Kubernetes, Docker, GitLab CI, nginx, Cloudflare, Grafana, Prometheus, Sentry, Jest

OpenSearch ArgoCD OpenTelemetry k6 BullMQ Langfuse Claude Code

Activity

GitHub stats in a terminal window

Contribution graph eaten by a snake

Popular repositories Loading

  1. nodejs-software-development nodejs-software-development Public

    The IP-33 students team 28 repo with labs / projects for Node.js course (2 course, 2 semester)

    TypeScript 14

  2. kpi-thesis kpi-thesis Public

    LaTeX-клас, шаблони й плагін Claude Code для диплома та курсових КПІ ФІОТ (кафедра ІПІ, ДСТУ 3008:2015)

    TeX 7

  3. CinemaComradeBot CinemaComradeBot Public

    The repo for movie-manager bot

    Python 2

  4. sokolovgit sokolovgit Public

    The repo for personal README and other stuff.

    JavaScript 1

  5. data-analysis-in-information-systems data-analysis-in-information-systems Public

    The repo for data analysis in informatics systems laboratory works

    HTML 1

  6. parallel-computing-technologies parallel-computing-technologies Public

    Parallel computing technologies course

    Java 1