Backend dasturchi · frontendni ham biladi

Aslbek
Utayev

Serverlar, API'lar, navbatlar va qurilmalar bilan ishlayman. Kerak bo'lsa interfeysini ham o'zim yig'aman.

← chiziqni suring: qaysi tomonim qanchalik →

GET

/whoami

01 / 05

Odatda foydalanuvchi ko'rmaydigan qismni quraman: to'lov o'tadigan, qurilma javob beradigan, bot uxlamaydigan joyni.

Ishimning ko'p qismi Django atrofida: DRF, async view'lar, Channels bilan WebSocket, Celery bilan fon vazifalari. To'lov tizimlarini ulayman, vending avtomat, kiosk va isitgich kabi qurilmalarni MQTT orqali boshqaraman, o'nlab Telegram botlarni prod'da yurgizaman.

Frontendga ham begona emasman. Merchant kabinetlar va CRM panellarni Vue 3'da, boshqaruv panellarini React'da, landinglarni Next.js'da yozganman. Shuning uchun API'ni uni ishlatadigan odam ko'zi bilan loyihalayman.

"name"
"Aslbek Utayev"
"role"
"Backend dasturchi"
"side"
"Vue · React · Next.js"
"location"
"Toshkent, O'zbekiston"
"main_stack"
["python", "django", "postgres"]
"open_to_work"
true
40+repozitoriy
11Telegram bot
7prod domen
4til: uz · ru · en · qq
GET

/architecture

02 / 05

Loyihalarimning umumiy skeleti. Tugunni bosing: u qayerda ishlatilganini ko'rasiz.

kirishchegarailovama'lumot · fonWeb / SPAvue · react · nextTelegrambots · mini appQurilmalarvending · kiosk · heaternginxtls · reverse proxyWebhookaiogram 3MQTT brokeraiomqttDjango APIdrf · async · asgiChannelswebsocketPostgreSQLprimary dbRediscache · brokerCeleryworker · beatTashqi APIpay · yandex · ai
GET

/projects

03 / 05

Har bir endpoint bitta loyiha. Bossangiz javobi ochiladi.

GET/projects/2pay2pay / PulboxFintech · IoT platforma

To'lovlar, vending avtomatlar va kiosklarni boshqaruvchi platforma. Bitta Django monolit ichida: to'lovlar, obunalar, qurilmalar, MQTT broker, CRM, hisobotlar va bir nechta Telegram bot.

  • Qurilmalar bilan MQTT orqali real vaqtdagi aloqa
  • To'lov tizimlari integratsiyasi va tranzaksiyalarni tekshiruvchi bot
  • Celery beat bilan rejali vazifalar, GitHub Actions orqali avtomatik deploy
  • Merchant kabinet (Vue 3 + TS) va rollar Django Group orqali beriladigan ichki CRM
Batafsil
HTTP/1.1 200 OK
{
"domain": "2pay.uz",
"type": "Fintech · IoT platforma",
"stack": ["Django", "DRF", "PostgreSQL", "Redis", "Celery", "MQTT", "Docker", "Vue 3"]
}
WS/ws/kioskInterCity KioskReal-time backend

Temir yo'l chiptalarini sotadigan kiosklar uchun server. Kiosk bilan butun aloqa bitta WebSocket orqali, o'zimiz yozgan protokol bo'yicha.

  • Kiosk ↔ server protokoli hujjatlashtirilgan (PROTOCOL.md)
  • Click / Payme to'lovlari, qaytarishlar haqida Telegramga ogohlantirish
  • Buyurtma, to'lov va WebSocket protokoli uchun testlar
  • Kiosk qurilmalari device_id + token bilan autentifikatsiya qilinadi
Batafsil
HTTP/1.1 101 Switching Protocols
{
"domain": "temir yo'l chipta kiosklari",
"type": "Real-time backend",
"stack": ["Django 5.1", "Channels", "Celery", "PostgreSQL", "Redis", "pytest"]
}
GET/projects/promoy-marketPromoy MarketAsync backend + Vue SPA

B2B do'konlar uchun tovar to'ldirish marketi. Monolitdan alohida servisga ajratib olindi: DRF'siz, to'liq async Django view'lar, ASGI + uvicorn ustida.

  • Async qoidasi: lazy relation yo'q, hammasi select/prefetch bilan oldindan yuklanadi
  • Checkout select_for_update + transaction.atomic bilan, poyga holatisiz
  • 2pay tokeni orqali SSO, foydalanuvchi va kompaniya Redis keshida sinxronlanadi
  • Frontend: Vue 3 + Tailwind 4, CRM bo'limida yangi buyurtmaga ovoz va push bildirishnoma
Batafsil
HTTP/1.1 200 OK
{
"domain": "promoy-market.uz",
"type": "Async backend + Vue SPA",
"stack": ["Django async", "ASGI", "uvicorn", "PostgreSQL", "Redis", "Vue 3", "TypeScript", "Tailwind 4"]
}
PATCH/heater-control/devices/:idZevron — isitgich boshqaruviIoT · full-stack

Ko'mirli isitgich (katyol) qurilmalarini masofadan boshqarish. Backend MQTT orqali telemetriya yig'adi, React panel va Telegram bot orqali kuzatiladi.

  • Telemetriya: suv, ko'mir va havo harorati, motor toki, RSSI, olov/sensor ogohlantirishlari
  • Harorat chegarasini o'zgartirsangiz, buyruq darhol qurilmaga yuboriladi
  • React + TS panel: filiallar bo'yicha filtr, 24 soatlik harorat grafigi
  • Telegram bot: deep-link va taklif kodi orqali ulanadi, faqat o'qiydi va o'z bazasi yo'q
Batafsil
HTTP/1.1 200 OK
{
"domain": "katyol qurilmalari",
"type": "IoT · full-stack",
"stack": ["Django", "aiomqtt", "Celery", "knox", "auditlog", "React", "Vite", "aiogram"]
}
GET/projects/silkscoreSilkScoreSport platformasi backend

Sport yangiliklari va jonli o'yinlar platformasi uchun texnik topshiriq (v2.0) asosida qurilgan backend: auth, sport ma'lumotlari, CMS, izohlar, hamjamiyatlar va qidiruv.

  • OTP, Google va Apple orqali kirish; JWT (15 daqiqa / 30 kun, logout'da blacklist)
  • Jonli o'yin va hamjamiyat kanallari uchun WebSocket, JWT bilan himoyalangan
  • API-Football adapteri va Celery orqali jonli o'yinlarni muntazam so'rab turish
  • Daraxtsimon izohlar, shikoyatlar va so'kinish filtri; media S3'da
Batafsil
HTTP/1.1 200 OK
{
"domain": "silkscore.uz",
"type": "Sport platformasi backend",
"stack": ["Django 5", "DRF", "Channels", "Celery", "SimpleJWT", "S3", "OpenAPI", "Next.js"]
}
POST/ai/postsContentLab AI SMM botAI konveyer

Instagram reels va istoriyalardan Telegram kanal uchun tayyor post yasaydigan konveyer. Admin tasdiqlamaguncha hech narsa kanalga chiqmaydi.

  • Video 720p'da yuklanadi, ffmpeg bilan tayyorlanadi, Aisha STT matnga o'giradi
  • Brend ohangiga mos post matnini Claude yozadi, admin tasdiqlaydi yoki tuzatadi
  • Darhol yoki rejalashtirilgan nashr; har dushanba adminga haftalik hisobot
  • Workspace'lar: bir nechta Instagram akkaunt ↔ kanal juftligi
Batafsil
HTTP/1.1 201 Created
{
"domain": "Instagram → Telegram",
"type": "AI konveyer",
"stack": ["Django", "aiogram 3", "PostgreSQL", "ffmpeg", "Anthropic API", "Aisha STT", "Docker"]
}
GET/projects/useful-taxiUseful Taxi CRMCRM + bot ekotizimi

Taksi parki uchun CRM: haydovchilar, balans, to'lovlar va Yandex Fleet bilan sinxronlash. Haydovchi boti CRM bazasiga to'g'ridan-to'g'ri kirmaydi, ichki REST API orqali ishlaydi.

  • Yandex Fleet API'dan haydovchilarni import va sinxronlash
  • Bot ↔ CRM: Bearer kalitli ichki /api/bot/, botning o'z Redis'ida FSM va limitlar
  • 4 til: o'zbek, rus, ingliz, qoraqalpoq
  • Bir nechta Telegram akkauntni bitta paneldan yurgizadigan Telethon userbot
Batafsil
HTTP/1.1 200 OK
{
"domain": "taksi parki",
"type": "CRM + bot ekotizimi",
"stack": ["Django 5", "DRF", "Celery", "Redis", "aiogram", "Telethon", "Jazzmin"]
}
POST/api/scanIMEI RegisterBot + Mini App

QR koddan qurilma ma'lumotlarini (P/N, SN, IMEI, SW) yig'ib, Excel'ga chiqaradigan tizim. Rasm yuborsangiz bot o'zi o'qiydi, Mini App esa kamera orqali skanerlaydi.

  • Bot va Mini App bitta Django bazasiga yozadi, natija bitta jadvalda
  • Webhook rejimi; Django faqat 127.0.0.1'da, tashqariga nginx orqali chiqadi
  • Ro'yxatlar bo'yicha Excel eksport
Batafsil
HTTP/1.1 201 Created
{
"domain": "Telegram Mini App",
"type": "Bot + Mini App",
"stack": ["Django", "aiogram", "Telegram WebApp", "nginx", "openpyxl"]
}
GET/projects/vendboxVendboxLanding + API + bot

Vending avtomatlar brendi uchun to'liq to'plam: SSG landing, ochiq API, marketing boti, merchant va xarid ilovalari.

  • Next.js 16 App Router, 3 tilda statik generatsiya; API ishlamasa ham sahifa qulamaydi
  • DRF API: mahsulotlar, tariflar va hamkorlik arizalari
  • aiogram 3 bot: uz/ru/en, ariza qabul qilish
  • pytest, ruff, makemigrations --check bilan tekshiruvlar
Batafsil
HTTP/1.1 200 OK
{
"domain": "vendbox.uz",
"type": "Landing + API + bot",
"stack": ["Next.js 16", "Tailwind 4", "DRF", "PostgreSQL", "aiogram 3", "Vue 3"]
}
GET/projects/promoyPromoy ekotizimiKiosk + landing

Promoy uchun landing, backend, Linux kiosk va guruh boshqaruv boti. Eng qiziq qismi: sensorli kiosk'ni GNOME'ning yashirin ishoralaridan himoyalash.

  • Next.js 14 RSC landing, kutubxonasiz i18n, hydration ogohlantirishlari yo'q
  • Kiosk: Mutter'ga qattiq yozilgan 3/4 barmoqli ishoralar bloklandi
  • systemd servis, install / update / uninstall skriptlari
  • Django 5.2 + DRF backend, gunicorn + nginx
Batafsil
HTTP/1.1 200 OK
{
"domain": "landing · kiosk · botlar",
"type": "Kiosk + landing",
"stack": ["Next.js 14", "TypeScript", "Django 5.2", "Linux", "systemd", "asyncpg"]
}

// yana ishlar

Next.js

ParkingBox

parkingbox.uz

Landing, statik eksport

React

Pulbox

pulbox.uz

React 19 + Tailwind 4 SPA

React

Katyol.uz

katyol.uz

Isitgichlar boshqaruv tizimi interfeysi

Django

Stayuz

backend

DRF + Celery, har servis uchun alohida Dockerfile

Django

SilkScore waitlist

wait.silkscore.uz

Rate-limit, telefon validatsiyasi, Excel eksport

aiogram

Group control bot

Telegram

Guruh boshqaruvi, asyncpg

aiogram

Admin bot

Telegram

Arizalar va Excel hisobotlar, SQLAlchemy

aiogram

Zayavka bot

Telegram

Proxy orqali ishlovchi ariza boti, Redis

GET

/stack

04 / 05

Har kuni ishlatadigan asboblarim.

requirements.txt
  1. django==5.x
  2. djangorestframework==3.15
  3. channels==4.x
  4. celery==5.4
  5. aiogram==3.x
  6. telethon==1.x
  7. aiomqtt==2.3
  8. psycopg==3.2
  9. redis==5.x
  10. uvicorn==asgi
  11. gunicorn==23
  12. pytest==+ ruff
package.json
  1. vue: ^3.5
  2. react: ^19
  3. next: ^16
  4. typescript: strict
  5. tailwindcss: ^4
  6. vite: ^7
  7. chart.js: lazy
  8. leaflet: lazy
infra.yml
  1. docker: compose
  2. nginx: reverse proxy
  3. postgresql: 13+
  4. redis: cache · broker
  5. mqtt: IoT
  6. github-actions: CI/CD
  7. linux: VPS · systemd
  8. s3: media
POST

/contact

05 / 05

Loyiha, hamkorlik yoki shunchaki savol. Formani to'ldirsangiz, so'rov o'zi yig'iladi.

Yuborish tugmasi pochta ilovangizni tayyor xat bilan ochadi.

// keyingi qadam

Keling, birga nimadir quramiz.

Telegramda yozish
aslbek@asldev: ~
❯