Мазмұнға өту

Александр БасаргинBackend / Software Engineer

Төлем жүйелері, цифрлық тауарлар және олардың үстіндегі боттар.

Жүйелерді домендік шекаралар бойынша бөлемін, сервистерді Redis Streams арқылы байланыстырамын және оларды шығаратын пайплайнға жауап беремін. Сервистер үшін Python мен Go, Rust — ыстық жол немесе құралдар мұны ақтайтын жерде.

Контракт пен толық жұмысқа ашықпын

orders — production

мысал сессия

docker compose ps

SERVICE STATUS

orders-api Up

payments-consumer Up

delivery-worker Up

kubectl rollout status deploy/orders-api

deployment "orders-api" successfully rolled out

redis-cli --no-raw XINFO GROUPS orders.events

name consumers pending lag

payments 3 0 0

delivery 2 0 0

01Мен туралы

Өнімнің ешкім көрмейтін бөлігімен жұмыс істеймін.

Жұмысымның көп бөлігі backend: төлемдерді өңдеу, цифрлық тауарларды жеткізу, сыртқы провайдерлер мен маркетплейстермен интеграциялар және бизнес сүйенетін ішкі құралдар. Күнделікті Python мен Go — REST API, деректерді өңдеу және қолмен жасалатын қадамдарды алмастыратын автоматтандыру. Өзін ақтайтын ішкі жобалар Rust-та жазылған.

Мен сервистерді саламын, жақсы ниеттегі монолитті емес. Домен нақты шекаралар бойынша бөлінеді, әр сервис айқын API келісімінің артында дербес деплой етіледі, ал синхронда қалуы керек сервистер бірінші таймаутқа дейінгі синхронды шақырулар тізбегінің орнына Redis Streams арқылы сөйлеседі.

Инфрақұрылым мен үшін кодпен бірдей маңызды. Docker мен Kubernetes, GitHub Actions пайплайндары, Prometheus пен Grafana — мәселе клиент жазғанша ертерек көрінуі үшін, — және көрінбеген кезде production support. Деплой орталарын нөлден құрдым және тісі шығып үлгергендерін ретке келтірдім.

Сондай-ақ native бағдарламалар шығарамын: Apple платформаларына арналған VPN клиенті, iOS-тан tvOS-қа дейін, Packet Tunnel мен sing-box негізіндегі рантайммен. Және сол тапсырыс сценарийлерін чатқа шығаратын Telegram боттары. Екі жақта жұмыс істеу API-лерді клиент шынымен қолдана алатындай жазуға үйретті.

ФокусBackend · интеграциялар · инфрақұрылым

ТілдерPython · Go · Swift · Rust

ФорматҚашықтан · контракт және толық жұмыс

СөйлеймінАғылшын · Орыс

02Жұмыстар

Backend жасаған өнімдер.

Цифрлық тауарлар, төлем рельстері және осының бәрін қозғайтын боттар.

01

Цифрлық тауарлар мен толықтыру платформасы

Микросервистер · тапсырыстар · төлемдер · жеткізу

Ойын толықтыруларын, жазылымдарды және басқа цифрлық тауарларды сататын витриналарға арналған backend. Тапсырыстар, төлемдерді өңдеу және жеткізу — айқын келісімдері бар жеке сервистер: тапсырыс қабылданады, төлем сыртқы провайдер арқылы расталады, ал орындау өзі қайталайтын delivery-worker-ге беріледі. Сервистер синхронды шақырулар тізбегінің орнына Redis Streams арқылы синхрондалады, және әр сатып алу қолдау тикетімен емес, тексерілетін жеткізумен аяқталады.

  • Python
  • Go
  • Redis Streams
  • PostgreSQL
  • MongoDB
  • Kubernetes
  • Prometheus
  • Grafana
02

Telegram боттары және сервисті қолдау

Боттар · автоматтандыру · аптайм

Telegram боттары клиенттік қабат ретінде: тапсырыс, толықтыру және күй сценарийлері витриналармен бірдей backend-пен жұмыс істейді, сондықтан чатта жасалған сатып алу сол тапсырыс пайплайнына түседі. Боттардан бөлек, инженерлік бөлік — сервисті тірі ұстау: деплой, мониторинг, инциденттерге жауап және провайдер баяулағанда не төлем ілініп қалғанда не болатынын шешетін операциялық логика.

  • Python
  • Go
  • Telegram Bot API
  • Docker
  • Kubernetes
  • Redis
03

Apple-ға арналған native VPN клиенті

iOS · iPadOS · macOS Catalyst · tvOS

Apple-дың барлық платформасына арналған VPN клиенті. Маршруттарды HTTPS subscription URL-дер мен configuration link-тер арқылы импорттау, VPN рантаймы Packet Tunnel, sing-box/libbox және Network Extension негізінде, маршруттар, қосылым күйі, диагностика және жазылымдар үшін пайдаланушы сценарийлері. App Store-ға StoreKit және платформа талаптарымен бірге релиз.

  • Swift
  • Network Extension
  • StoreKit
  • sing-box / libbox
  • UIKit
04

Ішкі автоматтандыру және құралдар

Бизнес операциялар · деректерді өңдеу

Барлық өнімдер үшін автоматтандыру және ішкі құралдар: сыртқы провайдерлер мен маркетплейстерді ішкі жүйелермен қосатын сервистер, операциялық деректер үстіндегі REST API және Python скрипті дұрыс құрал болмаған жердегі шағын Rust утилиталары. Деплой, troubleshooting және production support қоса.

  • Python
  • Go
  • Rust
  • PostgreSQL
  • REST API
  • Docker

03Қағидаттар

Бүгілмейтін бірнеше ереже.

Әдістеме презентациясы емес. Жүйені жақсы мағынада зеріктіретін шешімдер ғана.

01

Сервис өз деректеріне ие

Сервис шекаралары арқылы ортақ кестелер жоқ. Екі сервиске бір жолдар керек болса, біреуі өзіне тиесілі нәрседе қателеседі.

  1. 02

    Синхронды тізбектердің орнына оқиғалар

    Синхронда қалуы керек сервистер арасында Redis Streams. Бес тізбекті HTTP шақыруға жайылатын сұраныс — таусылуын күтіп тұрған кідіріс бюджеті.

  2. 03

    Айқын, нұсқаланған келісімдер

    Сервис құжатталған API арқылы тұтынылады, оның базасын оқу арқылы емес. Келісім өзгерісі оған мұқтаж кодтан бұрын шығады.

  3. 04

    Кері қайтару деплойға дейін бар

    Контейнерлер, декларативті деплой, health check-тер және тексерілген кері жол. Кері қайтаруды сипаттай алмасам, релизге дайын емеспін.

  4. 05

    Өлшенбесе — болжам

    Үнсіз бұзылуы мүмкін нәрсенің бәріне Prometheus метрикалары мен Grafana тақталары. Инцидент кіріс хаттардан бұрын графикте көрінуі керек.

  5. 06

    Зерікті инфрақұрылым жеңеді

    Команда түнгі үште қолдай алатын стек салыстырмалы мақалада жақсы көрінген стектен артық.

04Тәжірибе

Мұның бәрі қайда болды.

Контрактілі жобалар мен штаттық рөлдер, жаңасынан ескісіне қарай.

2025 — қазірге дейін

Contract iOS / Backend Developer

VPN сервисіКонтракт

VPN сервисі: Telegram боттары клиенттік қабат ретінде және оның жұмысының инженерлік логикасы — деплой, мониторинг және сервисті қолжетімді ұстау. Сондай-ақ Apple-ға арналған native клиент: iOS, iPadOS, macOS Catalyst және tvOS, қоса backend пен API.

2025 — 2026

Software Developer

Алаңдармен интеграцияларКонтракт

Цифрлық тауарлар бизнесін ол сататын алаңдармен қосатын интеграциялар: сыртқы сервистер мен маркетплейстер ішкі жүйелерге қосылған, қоса айналасындағы процестер үшін backend сервистер мен автоматтандыру. Деплой, troubleshooting және production support.

2025 — 2026

Contract Software Developer

Төлем контурыКонтракт

Сол цифрлық тауарлар бизнесінің төлем бөлігі: сыртқы төлем, бухгалтерлік және операциялық жүйелермен интеграциялар, REST API жобалау және деректерді өңдеу логикасы. PostgreSQL, MongoDB және Redis Kubernetes орталарында, CI/CD, мониторинг және production support.

2024 — 2025

Head of Software Development

Платформаны әзірлеуШтат

Цифрлық тауарлар платформасын әзірлеуді басқардым: өнімді жоспарлау, үйлестіру және сервис логикасын, интеграцияларды және операциялық құралдарды енгізу — практикалық backend әзірлеумен қатар.

05Стек

Шынымен қолданатыным.

Жүйедегі орны бойынша топтастырылған.

Тілдер

Python · Go · Rust · Swift

Архитектура

Микросервистер · Домендік шекаралар · API келісімдері · Redis Streams оқиғалары

Деректер

PostgreSQL · MongoDB · Redis

Жеткізу

Docker · Kubernetes · GitHub Actions · CI/CD

Бақылау

Prometheus · Grafana · Production support

Хостинг

Selectel · Yandex Cloud · OVH · Hetzner · DigitalOcean

Apple

UIKit · StoreKit · Network Extension · Packet Tunnel · sing-box / libbox

Байланыс

Жүйе өз пішінінен асып кетті ме?

Үнемі бұзылатын төлем интеграциясы, өз табысын көтеруі керек бот немесе екі жыл бұрын төрт сервис болуы тиіс монолит — сипаттаңыз, мен оны қалай бөлшектейтінімді айтып беремін.