Скачать PDF

Виктор Афанасьев

Backend & AI Engineer
Москва, Россия· +7 909 206 36 96· +371 28822665· afanasjewww@gmail.com· linkedin/afanasjewww· github/afanasjewww· afanasjewww.dev

О себе

Backend- и AI-инженер: более 5 лет разрабатываю продакшн-системы для финтеха, блокчейн-проектов и B2B SaaS. Сооснователь Borebase: разработал продукт целиком, от архитектуры и доменной логики до биллинга, деплоя и онбординга клиентов. Основной стек: асинхронный Python, PostgreSQL, TypeScript, C# и Redis. Работал со сквозным шифрованием API-трафика, мультичейн-инфраструктурой, аналитикой в реальном времени и мультиагентным RAG. Лучше всего раскрываюсь, когда сложную систему нужно продумать с нуля и довести до продакшна.

Опыт работы

Сооснователь и CTO, Borebase · borebase.io
  • B2B SaaS для геотехнических компаний с платящими клиентами, хостингом в ЕС, соответствием GDPR и поддержкой ISO 14688-1 и ISO 22476-1/-2. Создал с нуля, отвечаю за архитектуру.
  • Спроектировал модульный монолит: гексагональная архитектура (ports & adapters) и независимое тестирование модулей, изоляция тенантов, RBAC, аутентификация с JWT/argon2id и биллинг Stripe с тарификацией по числу пользователей.
  • С нуля написал геотехнический расчётный движок: анализ CPT/CPTu/SCPT, SPT и динамического зондирования (индекс типа поведения грунта Ic по Робертсону, N60, прочность на сдвиг), импорт геофизических данных в формате LAS и построение 2D-разрезов.
  • Разработал настраиваемый генератор отчётов: многоколоночный PDF и редактируемый DXF для AutoCAD/QGIS. Ресурсоёмкий экспорт и парсинг LAS вынес в фоновые воркеры на Redis/arq, чтобы интерфейс не подвисал.
Python · FastAPI · PostgreSQL · Redis · SQLAlchemy · React · TypeScript · Stripe · Docker
Fullstack-разработчик, DK Techno · brp-russia.ru
  • Единственный разработчик четырёх приложений на Next.js 16 в одном Docker-образе: витрина (ru/en), CRM для администраторов, внутренняя ERP и складской Telegram Mini App. Доступ к публичной и внутренней частям разграничен в middleware.
  • Разработал ядро админ-панели: JWT access/refresh, блокировка при переборе, инвалидация через tokenVersion, строгая валидация Zod, проверки CSRF/Origin, аудит изменений и двухэтапный медиапайплайн (Sharp/WebP) с защитой от path traversal и атомарной записью.
  • Разработал ERP на 28 моделях Prisma: парсер инвойсов и коносаментов, отгрузки с генерацией PDF-спецификаций и упаковочных листов, складской учёт и журнал остатков, платежи и отслеживание статусов таможенных MRN в ЕС.
  • Разработал каталог запчастей с поиском дублей между брендами и импортёр, который одной командой загружает в Postgres весь XLSX-файл поставщика на 250 тыс. строк.
  • Реализовал уведомления: Telegram-бот отправляет алерты по сущностям в темы группы, SMTP-очередь доставляет транзакционные письма и рассылки подписчикам.
  • Написал собственный трекер аналитики: уникальные посетители, просмотры по дням, топ страниц и модели техники с наибольшим числом кликов.
  • Настроил деплой под ключ: multi-stage Docker, защищённый VPS (Nginx, UFW, fail2ban), GitHub Actions с миграциями при старте контейнера и ~130 наборов тестов Vitest.
Next.js 16 · React 19 · TypeScript · Prisma 7 · PostgreSQL · Tailwind v4 · Docker · Vitest
Fullstack-разработчик / руководитель B2B-направления, PinToPay · pintopay.me
  • Реализовал сквозное шифрование API-трафика с защитой от replay-атак и API-шлюз с двухуровневым шифрованием.
  • Разработал админ-панель с трёхуровневой клиентской криптографией и RBAC на 5+ ролей, а также портал документации API с динамическим рендерингом OpenAPI.
  • Интегрировал несколько блокчейнов: индексация в реальном времени, автоматический сбор депозитов на горячие кошельки и автоматическая аренда энергии в сети TRON.
  • Запустил аналитику в реальном времени на ClickHouse (DAU/WAU/MAU, воронки, удержание, сессии): пакетная буферизация событий, лимит 10 тыс. запросов/мин, изоляция тенантов.
  • Внедрил систему Telegram-рассылок для аудитории более 100 тыс. пользователей с классификацией ошибок, а также отчётность на агрегациях MongoDB по 6+ метрикам с разбивкой по географии.
  • Получил повышение до руководителя B2B-направления: сопровождал 8 корпоративных клиентов, от онбординга и технических демо до поддержки интеграций.
Python · Sanic · MongoDB · PostgreSQL · Redis · ClickHouse · Nuxt · Docker
Frontend-инженер, UNHOSTED · PerpRoyale
  • Разработал PWA на React с офлайн-режимом для PerpRoyale, трейдинговой игры 1v1 / battle royale на Hyperliquid, с переиспользуемым UI-китом и оптимизацией под standalone-режим iOS.
  • Разработал торговые экраны с котировками Hyperliquid в реальном времени по WebSocket и тонкий API-клиент с трассировкой запросов (X-Request-Id) и идемпотентными повторными запросами.
  • Настроил продакшн-инфраструктуру на VPS: reverse proxy на Nginx, SSL/TLS, харденинг серверов.
React (Vite/TS) · PWA · WebSockets · FastAPI · MongoDB · Docker
Разработчик / AI-инженер, UNHOSTED · unhosted.ai
  • Разработал мультиагентную систему с оркестрацией, многошаговыми рассуждениями и вызовом инструментов, которая автономно выполняет задачи.
  • Реализовал двухуровневую память агентов: сессионный кэш в Redis и RAG на pgvector, подключил несколько LLM через OpenRouter.
  • Спроектировал единый слой интеграции инструментов с доверенными источниками (Moralis, TAAPI) и архитектуру торгового агента на ERC-4337 по принципу «AI решает, кошелёк исполняет».
Python · FastAPI · pgvector · Redis · OpenRouter · Moralis · TAAPI · Docker
Инженер-программист, ASML · asml.com
  • Заменил ненадёжный процесс работы с технологическими рецептами через CLI графическим интерфейсом на PyQt5 (FC-060) с проверкой дублей и предпросмотром изменений перед запуском. Время одного цикла выпуска рецептов сократилось на 65%.
  • Оформлял требования в user stories с приоритизацией по MoSCoW. Участвовал в тестировании и настройке в двухнедельных спринтах, сократив число ошибок при ручном выпуске рецептов.
Python · PyQt5 · ClearCase · Robot Framework
Инженер-программист (C# / цифровые двойники), Witteveen+Bos · witteveenbos.com
  • Руководил разработкой транслятора SysML в Unity для цифровых двойников: формальные архитектурные модели превращались в интерактивные 3D-симуляции.
  • Написал на C# масштабируемый импортёр структуры и поведения SysML с готовыми пресетами под проекты. Обеспечил обновление модели в реальном времени и участвовал в демо для заказчиков крупных инфраструктурных проектов.
C# · .NET · Unity · SysML / UML
Преподаватель программирования, Hello IT · helloit.lv
  • Обучил более 500 учеников от 7 до 18 лет основам C#, Java и веб-разработки, сам составил программы курсов, проводил воркшопы и лагеря по программированию.
Инженер-программист (партнёрские проекты), Fontys
  • Реализовал более 10 междисциплинарных проектов с компаниями-партнёрами (AIRIOS, Winclove, Sioux, Philips, Intelly, Games For Health, Enversed) с полным циклом разработки по Agile.
C# · .NET 7/8 · WinForms · Unity

Собственные проекты

Бот матчмейкинга 5v5 - Discord-бот на C#/.NET для матчей 5v5 по Call of Duty в сообществе. Игрок открывает лобби, бот собирает 10 участников, делит их на команды по собственной модели Elo и распределяет по голосовым каналам. Составы меняются даже при тех же игроках. У игры нет API с результатами, поэтому победителя игроки выбирают реакциями. Бот пересчитывает рейтинги и сохраняет их в MongoDB.
C# · .NET · DSharpPlus · MongoDB
payp · github.com/artjoms-dev/payp-cli - open-source AI CLI для дата-инженеров и архитекторов БД. Преобразует запросы на естественном языке в SQL для работы с БД без ручного написания запросов.
Python
Spread Finder - движок криптоарбитража между CEX и DEX. Мониторит 12+ CEX (REST и стаканы по WebSocket) и DEX-агрегаторы (Jupiter, 0x, 1inch, Raydium) и находит спреды между площадками. Перед алертом в Telegram проверяет, исполнима ли сделка: глубину стакана, сети перевода, бриджи (deBridge), безопасность токена (GoPlus). Подключаемые адаптеры бирж, локальная валидация котировок Solana AMM, дедупликация в Redis и paper trading с расчётом PnL.
Python · FastAPI · PostgreSQL · Redis · SQLAlchemy · ccxt · WebSockets · Docker
netwatch - личный прототип на Go для диагностики сетевых сбоев. Параллельно проверяет роутер, провайдера, DNS и VPN. Определяет источник сбоя по совокупности проверок, сглаживая колебания гистерезисом. Один статический бинарник с терминальным дашбордом в реальном времени.
Go
Telegram-магазин с оплатой в USDT - витрина на TRON TRC-20 с ончейн-проверкой платежей. Два бота (админка и витрина): CRUD каталога и заказов, статистика, рассылки, скидки, розыгрыши, несколько кошельков. При блокировке бота мгновенно переключается на резервный токен.
Python · Aiogram 3 · SQLAlchemy · PostgreSQL · Docker

Навыки

Языки
Python, Go, TypeScript / JavaScript, C#, C / C++, Java, SQL
Backend
FastAPI, Sanic, .NET 7/8, микросервисы, PostgreSQL / pgvector, MongoDB, Redis, ClickHouse, SQLAlchemy, REST, WebSockets, OpenAPI / Swagger, OAuth2 / JWT, Aiogram, APScheduler, Stripe
Блокчейн
Мультичейн-интеграции (TRON, TON, Solana, EVM), TronPy, Moralis, ончейн-индексация, ERC-4337, TRC-20 / USDT, управление горячими кошельками
AI / агенты
Оркестрация мультиагентных систем (AGNO), RAG, двухуровневая память, семантический поиск, оркестрация LLM (OpenRouter), интеграции инструментов (Moralis, TAAPI)
Frontend
React, Next.js, Vue / Nuxt, Astro, Tailwind / MUI, Mapbox GL, десктопный UI (WinForms, PyQt5)
DevOps
Docker, CI/CD в GitLab и GitHub, Nginx, MinIO (S3), Google Cloud Run, настройка VPS, SSL/TLS
Безопасность
Сквозное шифрование API-трафика, защита от replay-атак, валидация с учётом рекомендаций OWASP, харденинг систем

Образование

Бакалавр (BSc), ICT - Fontys Hogeschool
Эйндховен, Нидерланды · 2019 - 2024

Языки

РусскийРодной
АнглийскийСвободно
ЛатышскийСвободно