Akkan

Muzaffer Mert Akkan

Dasturiy taʼminot muhandisi — ERP va biznes tizimlari

Samarqand, Oʻzbekiston

Toʻliq stavkada universitet ERP tizimini quryapman · Tanlangan loyihalarga ochiqman

Tashkilot ishini yurituvchi dasturiy taʼminotni yarataman — va birinchi suhbatdan tortib ishga tushirilgan mahsulotgacha hammasi uchun oʻzim javob beraman.

mert@akkan.dev

Muzaffer Mert Akkan — dasturiy taʼminot muhandisi, ERP va biznes tizimlari, Samarqand

Talablar. Tizimlar. Joriy etish.

Aksariyat tashkilotlar jadvallar, hech kim tegishga jurʼat etmaydigan eski tizim va deyarli mos keladigan dastur bilan ishlaydi. Men ularning oʻrniga ish aslida qanday bajarilishiga qarab qurilgan dasturiy taʼminotni joriy qilaman.

Men yakka, boshidan oxirigacha ishlayman. Ishni bajaradigan odamlar bilan birga oʻtiraman, ularning yozuvlari va qoidalarini modellashtiraman, har kuni foydalanadigan interfeyslarini yarataman va natijani oʻzim xizmat koʻrsatadigan serverga joylayman. Muammoni tushungan odam bilan kodni yozgan odam oʻrtasida hech qanday topshirish bosqichi yoʻq.

Soʻnggi ishlar: kadrlar boʻlimi har kuni foydalanadigan universitet ERP tizimi; alyuminiy konstruksiyalar ishlab chiqaruvchisi uchun desktop, mobil va vebda ishlaydigan tijorat taklifi va loyihalash tizimi; quruvchi kompaniya uchun savdo bek-ofisi; birinchi haftasida 4 000 talaba bitta ham muvaffaqiyatsiz soʻrovsiz foydalangan soʻrovnoma.

Nima yarataman

  • ERP va bek-ofis tizimlari

    Xodimlar, talabalar, mijozlar, ombor, bronlar, shartnomalar — tarixi, ruxsatlari va audit jurnali bor yozuvlar.

  • Narxlash, tijorat takliflari va hujjatlar

    Aniq narxlash qoidalari, materiallar roʻyxati, buxgalteriya ishonishi mumkin boʻlgan PDF va Excel hujjatlari.

  • Bitta kod bazasidan desktop, mobil va veb

    Mijoz xodimlari aslida foydalanadigan har bir qurilmada, jumladan oflayn rejimda ham, bir xil biznes mantiq.

  • Eskirgan va tayyor dasturlarni almashtirish

    Jadvallar va eski tizimlardan maʼlumotlarni koʻchirish: har bir yozuv solishtiriladi, foydalanuvchilar uchun ish toʻxtab qolmaydi.

  • Sukut boʻyicha koʻp tilli

    Oʻzbek, rus, ingliz va turk tilidagi interfeyslar — barchasida yagona son va sana formati.

  • Joriy etish va ekspluatatsiya

    Docker, CI/CD, zaxira nusxalar, ishga tushirishdan oldin yuklama testlari va ishchi maʼlumotlar bazalariga ularni hech qachon qayta yaratmasdan qoʻllaniladigan yangilanishlar.

VEB · DESKTOP · MOBIL · POSTGRESQL · TYPESCRIPT · PHP

Beshta tizim.

Ikkitasi kundalik foydalanishda, bittasi mijozda ishlab turibdi, ikkitasi ishlab chiqilmoqda. Quyidagi har bir raqam haqiqiy va 2026-yil sentabr holatiga koʻra dolzarb.

Kundalik foydalanishda

2026 — hozirgacha

Kampus: universitet ERP tizimi

Kim uchun: Oʻzbekistondagi davlat texnika universiteti — taxminan 9 000 talaba, 800 xodim

Universitetning shtatdagi ERP muhandisi sifatida bitta dasturchi tomonidan noldan loyihalangan va qurilgan, butun universitetni qamrab olgan ERP. Kadrlar moduli — akademik va maʼmuriy xodimlar bilan bogʻliq barcha amallar — tayyor va har kuni ishlatiladi. Akademik modullar (oʻquv rejalari, kurslarga yozilish, baholash, oʻqishni koʻchirish, transkriptlar, bitiruv auditi) qurib boʻlingan va joriy etilishini kutmoqda.

Mijoz uchun nima oʻzgardi

Ilgari jadvallarda saqlangan xodimlar maʼlumotlari endi toʻliq tarixi bilan yagona ishonchli manbaga ega: har bir oʻzgarish sanasi bilan, hujjatga asoslangan va uni kiritgan shaxsga bogʻlangan.

Maʼmuriy hujjat aylanishi elektron pochta va qogʻoz oʻrniga tizim ichida yuradi.

Koʻp tilli jamoa uchun toʻrtta interfeys tili.

  • ~120 maʼlumotlar bazasi jadvali
  • 230+ biznes qoidalarni saqlovchi funksiya
  • 8 341 talaba yozuvi import qilindi va solishtirildi
  • 4 interfeys tili

Batafsil

Oltita PostgreSQL sxemasi. Biznes qoidalar PL/pgSQL funksiyalari va cheklovlarda yashaydi, shuning uchun ularni qaysi ilova chaqirishidan qatʼi nazar amal qiladi; Laravel API ularni React/TypeScript frontendiga taqdim etadi. Xodimlar yozuvlari kuchga kirish sanalari bilan yuritiladi, oʻzgarishlar hujjatlarga asoslanadi, audit jurnali har bir amalni bajargan shaxsni qayd etadi. Rolga asoslangan kirish nazorati va Microsoft Entra ID orqali yagona kirish. 8 341 talaba, 97 taʼlim yoʻnalishi va 4 000 ga yaqin kursni qamrab olgan eski Excel maʼlumotlarining takrorlanadigan importi — har bir nomuvofiqlik jimgina tuzatilmaydi, balki hisobotga chiqariladi. Tranzaksion yangilash paketlari, tekshiriladigan tungi zaxira nusxalar, universitetning oʻz serverlarida Docker orqali joylashtirish.

Eng qiyin qismi — talablar. Kadrlar boʻlimining jarayoni odamlarning xotirasida va yillar davomida yuritilgan jadvallarda edi; model boʻlimda hech qachon boʻlmagan qoidalarni oʻylab topmasdan har bir tarixiy holatni saqlashi kerak edi.

Ishlab turibdi

2026

4 000 talaba bir haftada foydalangan soʻrovnoma

Kim uchun: oʻsha universitet — uning 8 962 nafar faol talabasi

Universitet har yili qaysi tanlov fanlarini ochishni hal qiladi va shu yilgacha buni talabalardan soʻramasdan hal qilardi. Bu mobil qurilmalar uchun moʻljallangan ilova: talabalar universitet hisobi orqali kiradi va taklif etilgan har bir tanlov fanini ikkala semestr uchun birdaniga baholaydi. Oʻquv boʻlimi talabni koʻrib, fanlarni shunga qarab ochadi.

Mijoz uchun nima oʻzgardi

Qaror endi maʼlumotlarga asoslanadi: 244 ta fan hech kimga kerak emasligi maʼlum boʻldi — universitet buni ularni ochishdan oldin bilishi kerak edi.

260 talabani tushirib qoldirgan registrator ofisi eksporti soʻrovnoma oʻrtasida kodni oʻzgartirish bilan emas, maʼlumotlarni qayta import qilish bilan tuzatildi.

Minglab talabalar kampusning bitta tarmoq manzili orqali kirgan ishga tushirish haftasida birorta ham muvaffaqiyatsiz soʻrov boʻlmadi.

  • 4 071 talaba tizimga kirdi, dastlabki sakkiz kunda
  • 34 152 fan bahosi berildi
  • 2 644 baho eng band soatda
  • 0 muvaffaqiyatsiz soʻrov, bir soniyada 500 talaba bilan

Batafsil

PostgreSQL, PL/pgSQL, Laravel, React, TypeScript; Microsoft Entra ID orqali kirish; har bir ekran va barcha 860 ta fan tavsifi uchun toʻrt til. Baholar soʻrovnomani yakunlash bilan toʻqnashmasligi uchun tranzaksion qatorlarni bloklash — 50 ta pgbench mijozidan 2 000 ta raqobatdosh amal bilan tekshirildi, nol xato. k6 keskin yuklama testi: bir soniyada 500 talaba, p95 — 252 ms, nol xato; uzoq muddatli test: 14 238 soʻrov, nol xato. Yuklama testlari ishga tushirishdan oldin ikkita xatoni topdi — php-fpm resurslarini tugatib qoʻygan nginx keep-alive sozlamasi va butun kampus NAT manzilini bitta talaba deb hisoblagan soʻrovlar cheklagichi; ikkalasi ham birinchi tongdan oldin tuzatildi. Ishchi maʼlumotlar bazasi 12 ta idempotent sxema yangilanishini qabul qildi va hech qachon qayta yaratilmagan; har bir yangilanish ishchi sxemani repozitoriydagi sxema bilan solishtirish bilan yakunlanadi.

Ekspluatatsiyada

2025 — 2026

Plana: ishlab chiqaruvchi uchun loyihalash, narxlash va tijorat takliflari

Kim uchun: Samarqanddagi alyuminiy deraza va eshik ishlab chiqaruvchisi

Deraza va eshik tizimlarini loyihalash uchun desktop muharriri, mobil yordamchi ilova hamda dilerlar va administratorlar portallari bor veb-sayt. U kompaniya kengaytira olmaydigan uchinchi tomon loyihalash va tijorat taklifi vositasini kompaniyaning oʻziga tegishli dasturiy taʼminot bilan almashtirdi. Desktop, mobil va veb — uchalasi ham ishlatilmoqda.

Mijoz uchun nima oʻzgardi

Tijorat takliflari tezroq va aniq chiqadi: har bir profil, oyna, zichlagich va furnitura miqdori taxmin qilinmaydi, hisoblanadi.

Dilerlar oʻz narx darajalari va buyurtmalarni kuzatish imkoniyati bilan oʻz portallarida ishlaydi.

Dasturiy taʼminot va uning rivojlanish rejasi kompaniyaga tegishli; mijoz desktop muharriri haqida buni yozma ravishda bildirgan.

  • 3 platforma bitta biznes qoidalar toʻplamidan foydalanadi
  • 1 009 narxlash, geometriya va saqlash boʻyicha avtomatik test
  • 1 marta bosish — yangi Windows versiyasi barcha oʻrnatmalarga chiqadi

Batafsil

Butunlay TypeScript. Geometriya, narxlash, materiallar roʻyxati, kesish roʻyxatlari va hujjat yaratish umumiy paketlarda yashaydi; ulardan Tauri desktop ilovasi, React Native/Expo mobil ilovasi va Next.js sayti foydalanadi — shuning uchun narx qoidasi bir marta yoziladi. Sahnalar bitta modeldan desktopda Konva, mobilda Skia va vebda SVG orqali chiziladi. Sinxronizatsiyali, oflayn ishlay oladigan maʼlumotlarni saqlash, jamoalar boʻyicha ajratilgan loyiha kirishi, diler narx darajalari, buyurtmalarni kuzatish va ombor harakati jurnali. Pul butun sonli eng kichik birliklarda saqlanadi, valyuta kursi esa hisob-faktura chiqarilganda qotiriladi, shuning uchun tijorat taklifi yuborilgandan keyin hech qachon oʻzgarmaydi. Windows oʻrnatuvchilari va ilova ichidagi yangilanishlar GitHub Actions orqali chiqariladi.

Eng qiyin qismi — real oqibatlari bor aniqlik. PDF taklif — xaridor imzolaydigan hujjat; kesish roʻyxatidagi yaxlitlash xatosi sexdagi jismoniy xatodir.

Ishlab chiqilmoqda

2026 — hozirgacha

Nivo: quruvchi kompaniya uchun savdo bek-ofisi

Kim uchun: turar-joy quruvchi kompaniyasi

Ijaraga olingan koʻp mijozli savdo platformasi oʻrniga kompaniyaning oʻz tizimi: quruvchining kvartiralar zaxirasi, mijozlari, bronlari, shartnomalari, toʻlov jadvallari, qarzlari va hujjatlari — u oʻzi nazorat qiladigan bitta tizimda. Kvartiralar, mijozlar va bronlar tayyor; navbatda — shartnomalar va toʻlovlar.

Mijoz uchun nima oʻzgardi — hozircha

Haqiqiy zaxira — beshta blokdagi 596 kvartira — import qilindi va eski tizimning oʻz jami koʻrsatkichlari bilan raqamma-raqam solishtirildi.

Har bir narx oʻzgarishi, bron va bekor qilish kim, qachon va nima uchun qilgani bilan birga maʼlumotlar bazasining oʻzi hech kimga tahrirlashga yoʻl qoʻymaydigan jurnalga yoziladi.

Jami summalari sinovdan oʻtgan qoidalar boʻyicha hisoblanadigan Excel eksportlari — shunday qilib ikki kishi hech qachon ikki xil raqamni koʻrmaydi.

  • 596 kvartira oldingi tizim bilan solishtirildi
  • 34 qayd etilgan arxitektura qarori
  • 3 til, birinchisi rus tili

Batafsil

TypeScript monorepozitoriysi: Next.js (server komponentlari va server amallari), Prisma bilan PostgreSQL 18, eksportlar, hujjatlar va rejalashtirilgan vazifalar uchun pg-boss ishchisi — Redis yoʻq. Domen qoidalari freymvorkdan mustaqil yadro paketida, har bir qoida uchun alohida unit-test bilan; holatlar faqat nomlangan hodisalar orqali oʻzgaradi; CHECK cheklovlari hech qachon rost boʻla olmaydigan narsani rad etadi. Har bir biznes jadvali kompaniya identifikatorini saqlaydi va doirasi cheklangan mijoz orqali oʻqiladi, shuning uchun bitta kompaniyalik oʻrnatma maʼlumotlarni qayta shakllantirmasdan koʻp mijozli boʻlishi mumkin. Maʼlumotlar bazasi triggerlari bilan himoyalangan, faqat qoʻshishga ruxsat beruvchi audit jurnali. Sessiyalar va parollar autentifikatsiya kutubxonasisiz amalga oshirilgan. Eski tizimning funksional auditi asosida noldan yozilgan; yetkazib beruvchining kodi yoki materiallari ishlatilmagan.

Har bir uzoq muddatli qaror repozitoriyda ADR sifatida saqlanadi — yozish paytida ular 34 ta — shunda mijozning keyingi dasturchisi, agar u qachondir paydo boʻlsa, faqat kodni emas, balki qarorlar mantigʻini ham meros qilib oladi.

Ishlab chiqilmoqda

2026

Xususiy shifoxona uchun yagona murojaatlar qutisi

Kim uchun: Samarqanddagi xususiy shifoxona

Bemorlar shifoxonaga Telegram, telefon, Instagram va sharhlar orqali yozadi, har bir kanalga esa kim tasodifan koʻrib qolsa, oʻsha javob berardi. Bu tizim har bir kiruvchi xabarni holati, masʼul shaxsi va oʻlchangan javob vaqti bor murojaatga aylantiradi, shunda rahbariyat nimaga, qanchalik tez va kim javob berganini koʻra oladi. Birinchi bosqich Telegramni — bot, biznes akkaunt va kanal izohlarini — boshqa kanallar plagin sifatida ulanadigan qilib loyihalangan yadroga ulaydi.

Mijoz uchun nima oʻzgaradi — rejada

Hech bir murojaat kimningdir shaxsiy telefonida qolib ketmaydi; har birining masʼul shaxsi va muddati bor.

Rahbarlar joriy navbatni va har bir operator boʻyicha haftalik hisobotlarni bir marta bosish bilan koʻradi.

Maʼlumotlar Oʻzbekistondagi serverlarda saqlanadi.

  • ≤ 3 s kiruvchi xabardan qutigacha, p95 maqsadi
  • 100 % kiruvchi xabarlar manba bilan solishtiriladi

Batafsil

Kanal adapterlari arxitekturasi: murojaatlar yadrosi hech qachon Telegram turlarini import qilmaydi; yangi kanal — bu bitta adapter va bitta sozlamalar sahifasi. Telegram Business ulangan akkauntlari, bot API va muhokama guruhi izohlari — bitta normallashtirilgan hodisalar sxemasi ustidagi uchta adapter. Holatlar, tayinlash, jamoalar, tayyor javoblar, ish vaqtini hisobga oladigan SLA taymerlari, kanallararo kontakt identifikatsiyasi, server tomonida ruxsatlarni tekshirish va audit jurnali. Avval aniq qaror va tekshiruv belgilari bilan spetsifikatsiya sifatida yozilgan, soʻngra unga muvofiq qurilgan.

Shunga oʻxshash tizim kerakmi?

mert@akkan.dev

Oldingi ishlar: 12 blokli sahifa konstruktoriga ega besh tilli universitet sayti (Lighthouse: foydalanish qulayligi, eng yaxshi amaliyotlar va SEO boʻyicha 100), uch tilli tibbiyot markazi sayti (Lighthouse 99–100) va GitHubdagi ochiq kodli loyihalar.

Sizni kutayotgan uch narsa.

Avval tushunish.

Men funksiyalar roʻyxatidan boshlamayman. Ishni bajaradigan odamlardan va ular allaqachon tayyorlayotgan hujjatlardan boshlayman hamda ular amalda yashaydigan yozuvlar va qoidalarni — hech kim yozib qoʻymagan istisnolar bilan birga — modellashtiraman. Dasturiy taʼminot shu modeldan kelib chiqadi, aksincha emas.

Isbot — Kadrlar moduli xodim yozuvining har bir tarixiy holatini saqlaydi, chunki bu boʻlimga kerak edi, chiroyli boʻlgani uchun emas. Ishlab chiqaruvchining tijorat taklifi qoidalari birinchi ekran paydo boʻlishidan oldin satrma-satr tekshirilgan.

Bir kishi — butun mahsulot.

Talablar, maʼlumotlar modeli, interfeyslar, joriy etish, ekspluatatsiya — hammasini oʻzim qilaman. Muammoni tushungan odam bilan uni qurgan odam oʻrtasida hech narsa yoʻqolmaydi va hech narsa topshirishni kutib turmaydi.

Isbot — Taxminan 120 jadval va 230 dan ortiq maʼlumotlar bazasi funksiyasiga ega, toʻrt tilli, har kuni ishlatiladigan va bitta dasturchi qurgan universitet ERP tizimi. Birinchi haftasida 4 000 talaba foydalangan, bitta dasturchi qurgan va yuritayotgan soʻrovnoma.

Chidamli qilib qurilgan.

Men quradigan tizimlar pul, shartnomalar, baholar va xodimlar maʼlumotlarini koʻtaradi. Ular duch keladigan yuklama ostida sinovdan oʻtkaziladi, qoidalari faqat interfeysda emas, maʼlumotlar bazasida ham majburiy qilinadi va har bir oʻzgarish qayd etiladi.

Isbot — Bir soniyada 500 talaba — nol xato. Narxlash dvigatelida 1 009 ta test. Maʼlumotlar bazasi triggerlari hech kimga tahrirlashga yoʻl qoʻymaydigan audit jurnallari. Oʻn ikki marta oʻzgartirilgan va hech qachon qayta yaratilmagan ishchi baza.

  • 9 000 talaba — ERP tizimini qurayotgan universitetimda
  • 120 jadval shu ERPda, qoidalarini 230+ funksiya saqlaydi
  • 8 341 eski talaba yozuvi import qilindi va solishtirildi
  • 4 071 talaba sakkiz kunda tanlov fanlari soʻrovnomasiga kirdi
  • 0 muvaffaqiyatsiz soʻrov — bir soniyada 500 talaba bilan
  • 1 009 avtomatik test — ishlab chiqaruvchining narxlash va geometriyasi uchun
  • 596 kvartira quruvchining yangi tizimida solishtirildi
  • 4 til — ularda ishlayman va dastur yarataman

Raqamlar 2026-yil sentabr holatiga koʻra. Hech biri yuqoriga yaxlitlanmagan.

Agar ishingiz oʻz vositalaridan oʻsib ketgan boʻlsa, menga yozing. Dasturni emas, ishni tasvirlab bering — qolganini oʻzim hal qilaman.

Ikki ish kuni ichida javob beraman. Rus, turk, ingliz yoki oʻzbek tilida yozishingiz mumkin. Samarqandda joyida, Oʻzbekiston, Qozogʻiston, Rossiya va Turkiyadagi mijozlar bilan esa masofadan ishlayman.