denis1011101.xyz / cv.sys updated 2026-09 download pdf

Denis Levenko

Backend Engineer — Ruby on Rails · Go · DevOps

Backend engineer with nine years in IT. I develop Ruby on Rails services in a codebase that spans Rails 4.2 to 7.1, maintain the GitLab CI/CD pipelines around them and run the infrastructure with Ansible and Docker. I also build products in Go.

location
Yekaterinburg, Russia
timezone
GMT+5
format
Remote

Experience

Abak-Press Media Holding

Yekaterinburg

product Media holding — a B2B marketplace and a network of city portals with branches in 32 cities, on a shared Rails codebase.

DevOps / Backend Engineer (Ruby on Rails)

— present

stack Ruby 3.1 (and 2.4–2.6 legacy), Rails 4.2 → 7.1, Go, Python, Hotwire, PostgreSQL, Redis, Docker / Compose / Swarm, GitLab CI/CD, Ansible, Nginx / Caddy / Traefik, Consul

  • Migrated two thirds of production services to Ruby 3, in a codebase that still spans Rails 4.2 through 7.1.
  • Set up GitLab CI/CD across every repository — build, tests and linter on each change — replacing ad-hoc manual checks.
  • Write and optimise Ansible roles and playbooks, and containerise services with Docker, Docker Compose and Swarm.
  • Built several internal products in Go.
  • Use Claude Code, Codex and Gemini day to day to speed up development, review code and build LLM-based tools, checking the generated code and understanding how it works.
  • Documented every internal service — the reference the team now onboards and debugs from.
  • Mentor an intern on Go, Ruby, Python and CI/CD tasks through code reviews and debugging sessions.
  • Built an image comparison prototype (Go, Python, Milvus) that grew into a standalone project.

QA Engineer

— · —

  • Built UI and API test automation from scratch (Ruby — Selenium — RSpec — Page Object — Allure) and trained the team to write it.
  • Wrote 80% of the project documentation and kept testing processes improving through heavy staff turnover.
  • Onboarded 10+ new employees into the test process as their mentor; owned testing strategy across web and mobile.

earlier QA Engineer at NPO Sapfir ( — , C#, Selenium, NUnit) and Nord — Home Appliances ( — , PhantomJS smoke tests), Yekaterinburg.

Projects

Built and shipped on my own time — code is public.

GetCourt — getcourt.co

2025 — present

stack Ruby on Rails, PostgreSQL, Docker, Gemini API

  • Built and maintain a tennis court finder with AI-assisted features.
  • 8.48K organic impressions and 209 clicks at a 2.5% CTR over three months (7 Jun – 5 Sep 2026), with no ad spend — from technical SEO and content.
  • I handle the product decisions, the Rails backend, deploys and search performance.

aireview — github.com/aireview

2025

stack Ruby, Gemini API, Ollama · published on rubygems.org

  • LLM code review for self-hosted GitLab merge requests: a second pass critiques the findings and drops the weak ones.
  • One review note per MR, updated on every run; optional Jira context.

wallchart26 — wallchart26.com

2026

  • Server-rendered Go application (templ, PostgreSQL) with type-safe templates and SQL-first data access — no JavaScript framework involved.

Open Source

Patches merged upstream in projects I use.

ruby-jwt — jwt/ruby-jwt#747

merged

scope Ruby · the Ruby JWT library, 800M+ downloads

  • Added a configurable leeway for iat claim verification, so a token issued by a server whose clock runs a little ahead is no longer rejected outright — the same tolerance the library already granted exp and nbf.
  • Added the option to the verifier and the configuration, with specs and documentation; the default behaviour is unchanged.

pronto — prontolabs/pronto#512

merged

scope Ruby · CI code-review runner, 16M+ downloads · CI matrix

  • The gem installs on Ruby 4.0 and is run there, but the CI matrix stopped at 3.4.
  • Ran the suite against the ruby:4.0 image (236 examples, 0 failures), then added the version to the matrix.

Contact

Fastest route is email or Telegram.