Backend developer with 10+ years of commercial Python development, the last four in payments and fintech. I usually own a service from the first commit through production and beyond: API contract, code, deployment, monitoring, incident response.
I care about the boring things: idempotent migrations, integrations that don't break, logs and traces you can actually debug with, and deployments with zero impact on users.
Experience
Life Pay / Fortis · Jul 2022 — present
Backend Developer · fintech for small and medium businesses in Russia: acquiring, Faster Payments (SBP), online cash registers
Fortis (MENA): merchant self-service · 2024 — present
- Self-service onboarding. A web portal where merchants register on their own, with registration steps orchestrated in Temporal. Wrote a substantial part of the workflows, with compensations and idempotent retries, and built a workflow registry page listing each workflow with its input and output JSON schemas.
- Authentication. Customized Keycloak: sign-in via token exchange, magic links, OTP and Sign in with Google, multi-layer brute-force protection. Built a Keycloak adapter service on FastAPI, and added API-key authorization for the Public API.
- Pricing and subscriptions. Worked on the pricing and subscriptions platform from the first AWS build to production in 2025; in 2026, built billing and add-ons. Designed and built a tariff/entitlements gateway for POS terminals from scratch, and validated it in shadow mode on live traffic: request mirroring, diffing against the BFF in Prometheus and Grafana, chaos testing for failure handling.
- Files and KYC. Built a file service from scratch and shipped it to production in 5 months: S3 storage, on-the-fly image resizing and transformations, background generation of variants, HEIC, WebP and PDF. Designed the KYC data model and built a document upload service.
- Merchant portal. Built a dashboard service for the merchant portal and a Zendesk ticket-enrichment service from scratch.
- HubSpot. Built merchant onboarding from a CRM deal and export of AI assistant and merchant portal usage metrics to HubSpot. For payment links from deals, extended the MyFatoorah adapter to support multiple accounts isolated by domain.
- Engineering foundations. With the team, rolled out linters, pre-commit, CODEOWNERS and SonarQube across roughly 15 projects, end-to-end tracing including Temporal workers, Sentry environments and Prometheus metrics for on-call. Built an Ansible-based Vault secrets configurator for disaster recovery. Wrote OpenAPI specs for some services, and covered API-first services with contract tests using Schemathesis.
AI in development · 2025 — present
- Built the Telegram interface for the merchant AI assistant (OIDC via Keycloak, Redis sessions, SSE streaming) and the data layer behind the LLM tool: it picks the data source and returns data in a single format. When the assistant moved to a separate perimeter with different data-residency requirements, connected new BFFs and adapted the infrastructure.
- Evaluated AI-based MR review using a test MR seeded with intentional bugs: compared qodo, kodus and my own prototype on local models. The paid agents missed bugs and gave inconsistent results across runs, so I proposed combining static analysis with parallel review of diff chunks.
- About a year of daily development with Claude Code, Cursor before that. Moved my setup to a provider-agnostic source: rules, skills, MCP and permissions live in one place (AGENTS.md), from which a tested generator builds configs for Claude Code and opencode. Measured token usage across 17 sessions and restructured my workflow around it: reading code in subagents, handoff hooks between sessions, and my own usage tracking.
Life Pay (Russia): online acquiring · 2022 — 2025
- For about 2.5 years, owned the payment links system and the SBP (Faster Payments System) Telegram bot as the original author: API v1 and v2, a client library, multi-tenancy, admin panel, metrics, support, and the track's quarterly roadmap.
- Built a service from scratch that relays card transactions into a unified merchant portal via Kafka: from message schemas to production, including a DLQ.
- Planned and ran the back-office migration from Python 2 and PHP to Python 3 and a current Django version, including moving database migrations from raw SQL to Alembic and then to Django migrations.
- In the payment gateway service, implemented the Yandex Split (BNPL) integration and, as groundwork for the MENA launch, the first MyFatoorah integration: refunds, webhook signature verification, multi-currency support, recurring payments.
- In the payment core, built two-stage payment handling (hold, confirm, void) and blocked repeat payment of an already-paid order; in the back office, built transaction status checks and status alignment on reconciliation mismatches.
- Diagnosed and fixed: 3DS flow hangs, false payment notifications, and duplicate orders caused by messenger link-preview bots.
Team and process
- Conducted technical interviews for hiring.
- Periodically took over part of my manager's duties: sprint planning, releases, running projects.
Stack: Python, FastAPI, Flask, Django, SQLAlchemy, Temporal, Keycloak, PostgreSQL, Redis, Kafka, S3, Kubernetes (EKS), GitLab CI, Vault, OpenTelemetry, Sentry, Prometheus, Grafana
EPAM Systems · Jan 2021 — Jun 2022 (1 yr 6 mo)
Senior Software Engineer · Saint Petersburg
- Built and launched a search and metadata portal for a client from scratch: REST API on Django and FastAPI, search on Elasticsearch.
- Built microservices on AWS (ECS, Lambda, SQS, S3) and ETL pipelines on AWS Glue and PySpark.
- Owned the backend side of every feature on the project.
- Introduced unit testing and code style checks (pytest, flake8) on the team, and sped up builds and deployment. Infrastructure on Terraform.
- Mentored and trained interns and junior developers.
Stack: Python, Django, FastAPI, SQLAlchemy, PySpark, PostgreSQL, Elasticsearch, AWS (ECS, Lambda, SQS, S3, Glue, Athena), Terraform
JetBrains · Jun 2019 — Dec 2020 (1 yr 7 mo)
Backend Developer · Saint Petersburg
- Maintained the backend of jetbrains.com and its satellite sites on Django and Jinja: refactoring, unit tests.
- Migrated form-submission handling to an asynchronous AWS pipeline (SQS, S3, Lambda) written in Kotlin.
- Owned infrastructure and CI/CD: Terraform, TeamCity.
- Ran load testing of the site's backend in Apache JMeter.
- Reworked the Zendesk and Marketo integrations, and helped with the Crowdin integration: file merging, exporting and importing translations.
- Worked on SEO improvements for the sites.
Stack: Python, Django, Jinja, Kotlin, JavaScript, AWS, Terraform, TeamCity
RAWG.io · Aug 2018 — May 2019 (10 mo)
Backend Developer · remote · a video game recommendation service, the "IMDb for games"
- Built the backend for user-generated content and the recommendation system, based on user-based collaborative filtering: Django, PostgreSQL, Redis.
- Search and filters on Elasticsearch and PostgreSQL full-text search, plus a real-time top-100 ranking.
Stack: Python, DRF, PostgreSQL, Celery, Elasticsearch, RabbitMQ, Docker
GOST-group · Jun 2016 — Aug 2018 (2 yr 3 mo)
Python Developer · Moscow
- Developed web applications on Django and Tornado: forms and data analytics, an admin panel for geodata processing.
- Wrote a Go service for parsing binary data coming from field equipment.
Stack: Python, Django, Tornado, Go, PostgreSQL, Redis, Celery
Skills
- Languages
- Python, SQL; some Go and Kotlin
- Backend
- FastAPI, Django / DRF, Flask, SQLAlchemy + Alembic, pydantic, Celery, Temporal
- Payments
- online acquiring, Faster Payments (SBP), 3-D Secure, two-stage payments, refunds and recurring payments, BNPL, signed webhooks, transaction status reconciliation, idempotency
- Data
- PostgreSQL, Redis, Kafka, Elasticsearch, S3
- Auth
- Keycloak, OIDC, JWT, OTP
- Infrastructure
- Kubernetes, Docker, GitLab CI, Terraform, Vault, AWS
- Observability
- OpenTelemetry, Sentry, Prometheus, Grafana
- Testing
- pytest, Schemathesis, SonarQube
- AI-assisted development
- Claude Code, MCP, subagents, opencode, local models (Ollama)
Education
Academy of Social Management, Moscow, 2006 — 2011
Public Administration
Languages
Russian — native
English — B2