without a second thought_

About me_ Blog_
altushka

Arapov Mark

Tech Lead / Back End Engineer

In Short_

Backend engineer with a bias toward systems that actually hold under load. Started as a frontend dev, moved to backend, grew into a Tech Lead — and stayed close to the metal the whole way.

I build things end-to-end: from architecture decisions and greenfield systems to infrastructure and monitoring. My stack centers around Go, but I think in abstractions first and language second. Currently leading development of a performance marketing platform — own MMP, API Gateway, and traffic distribution system.

I care about clean architecture, observable systems, and writing code that the next engineer won't curse at. 🖨️ cv.pdf_

Backend_
  • golang
  • grpc
  • kafka
  • PostgreSQL
  • MongoDB
  • redis/sentinel
  • Prometheus
  • Grafana
  • Nginx
Frontend_
  • js/ts
  • React
  • htmx
Common_
  • clean architecture
  • TDD
  • DDD
  • Docker
  • CI/CD
  • linux
  • open-api

Experience 4 years, 7 months, 17 days_

NDA Performance Marketing Agency (office_)

Tech Lead (mobile measurement platform_)

2025.9 - now

Problems and Solutions:


Joined the company with an existing MMP (Mobile Measurement Platform) in a raw, barely functional state. Rather than patching it endlessly, I made the call to rewrite it from scratch — and delivered a system that was not only stable but significantly more flexible. The key improvement was a redesigned engine for click path routing, which allows configuring complex multi-step attribution flows with fine-grained control over each transition point.

Alongside the MMP, I designed and built a new product from the ground up — an internal API Gateway that became the core of the entire platform architecture. It is responsible for authentication, authorization, and user management, and exposes a modular interface that allows other internal products to plug in without tight coupling. Think of it as the backbone that makes the whole system composable.

Also developed a proprietary traffic distribution system — a fully custom analog of Keitaro, but tailored to our specific workflows. Improved upon the original concept by addressing limitations that were causing friction in campaign management and reporting.

On the infrastructure side, I set up the server infrastructure from scratch and implemented full observability via Grafana + Prometheus — covering service metrics, alerting, and dashboards across all products.

Used languages, technologies, and tools: Golang, PostgreSQL, Redis, Docker, Grafana, Prometheus, Nginx etc.


Wildberries (remote_)

Back End developer (foreign_integrations_)

2023.10 - 2025.9

Problems and Solutions:


Worked across multiple high-load domains — order creation pipeline and repackaging system — at the scale Wildberries operates during peak traffic. Formally part of the foreign integrations team, but regularly pulled into the core order infrastructure.

Designed and implemented an in-memory caching layer for the order creation system — covering both domestic and international offices. Owned the full architecture: what to cache, TTL strategy, and invalidation logic. Chose in-memory over Redis deliberately to eliminate network round-trips and keep latency minimal at the point of order creation.

Feature-led the returns-from-repackaging-table flow — sole backend engineer on the feature. Independently identified and aligned with the responsible frontend and mobile developers, then coordinated cross-department integrations with adjacent teams to wire up the full flow. Owned the feature end-to-end from backend architecture to cross-team delivery.

Also took on mentorship of trainee developers — owned their code review process and engineering standards. Several of those interns are now full engineers in the company.

Used languages, technologies, and tools: Golang, gin, internal platform, NATS, traefik, Postgres, Docker, Tarantool etc.


Startup developing (remote_)

Back End Engineer

2022.2 - 2023.10

Problems and Solutions:


Built the authentication system from scratch using JWT — wrote custom middleware with full control over token structure and prefixes, rather than delegating it to a library and losing visibility over the internals.

Made the initial call to use MongoDB for the data model — single primary entity, low volume, flexible schema. Hit a consistency issue with struct embedding mid-development, diagnosed it, and resolved it cleanly using the `bson:",inline"` directive.

Needed image hosting with zero infrastructure budget. Evaluated options and chose Cloudinary — solid API, generous free tier for early stage. Transmitted images as base64 for clean JSON transport.

Used languages, technologies, and tools: Golang, gin, echo, Cloudinary, MongoDB, Postgres, Docker, JWT etc.


PrimeGate (remote_)

Front End Engineer

2021.8 - 2023.5

Problems and Solutions:


When I first joined, I was assigned to a new project to create a mobile application for a CRM system. The design was quite complex due to the fact that we were creating the app for multiple platforms, including iPad. One of the challenges we faced was the large amount of data that needed to be passed between screens. After reviewing the available options, I decided to prioritize Redux over Mobx, as it allowed data to be manipulated more strictly, helping to avoid accidental changes in the future.

The layout had 23 screens with low component reusability due to design constraints. Solved it with compound components — built skeleton structures that could be composed via `children` rather than duplicated.

Selection fields varied in type — date-based vs value-based — but needed identical UI. Built two components with the same interface but different internals. The date variant required extra work: existing libraries had platform inconsistencies, so ended up using different implementations per platform under a unified API.

Used languages, technologies, and tools: React, React Native, Figma, Redux, react-router-dom, etc.

Self development_

I read books, watch recorded lectures, learning new technologies and improving my skills every day.

In the plan:

Books:

- Domain Driven Design

- Kafka: The Definitive Guide, 2nd Edition read right now

Languages:

- java/scala

- zig