2026-yilda system design suhbatidan qanday o'tish kerak (Toshkent va remote)
Uch yil oldin Toshkent IT suhbatida system design savoli kompaniya Google bo'lib ko'rinishga harakat qilayotganining kamyob belgisi edi. Bugun bu odatiy hol. IT Park rezidentlari, Click va Payme kabi fintechlar va ayniqsa remote-first Yevropa ish beruvchilari har qanday middle va undan yuqori darajadagi ishga yollov uchun kamida bitta dizayn bosqichini o'tkazadi. Tuzilgan yondashuv mashq qilinmagan bo'lsa, bilim emas, jarayon yo'qligi sababli bosqichdan o'ta olmaysiz.
Bu qo'llanma sizga o'sha jarayonni beradi.
Intervyu oluvchi aslida nimani o'lchaydi
- Tuzilgan fikrlash.Yechimga o'tishdan oldin muammoni parchalaysizmi yoki darhol ma'lumotlar bazasini chiza boshlaysizmi?
- Muqobil tanlovlarni bilish. Ushbu aniq holatda NoSQL emas SQL tanlaganingizni tushuntirib bera olasizmi?
- Noaniqlikda muloqot. Aniqlashtiruvchi savollar berasizmi yoki yashirin taxminlar qilasizmi?
- Talab bo'lganda chuqurlik.Kesh strategiyasi, replikatsiya kechikishi, consistent hashing — bittasini albatta sinab ko'rishadi.
Besh bosqichli freymvork
1-bosqich — Talablarni aniqlashtirish (3–5 daqiqa)
Hech qachon chiza boshlang. Savol berishdan boshlang.
- Miqyos:Kunlik faol foydalanuvchilar soni? Sekundiga yozuvlar? O'zbekiston uchun URL qisqartiruvchi va Butun Markaziy Osiyo uchun — butunlay boshqa masalalar.
- Cheklovlar:Read-heavy yoki write-heavy? Qat'iy izchillik kerakmi? 4G tarmog'idagi mobile-first foydalanuvchilar?
Taxminlaringizni doskaga yozib qo'ying — keyinroq noto'g'ri qaror qilsangiz, oldindan belgilagan taxminga murojaat qilasiz.
2-bosqich — Miqyosni baholash (3–5 daqiqa)
Konvert orqasidagi hisob-kitob siz miqdoriy fikrlashingizni ko'rsatadi va sharding, kesh yoki CDN kerakligini oldindan aytib beradi.
Misol: «1 mln DAU, minutiga 2 so'rov — bu o'rtacha 35 RPS, cho'qqida 100 ga yaqin. Bitta server bardosh beradi. Qiziqarli cheklov — saqlash hajmi, o'tkazuvchanlik emas».
3-bosqich — Yuqori darajali sxema (10 daqiqa)
Sistemani minimum komponentlar bilan bosidan oxirigacha chizing. Mijoz → Load Balancer → App Server → Ma'lumotlar bazasi. Faqat 1-bosqichda read-heavy pattern aniqlanganida kesh qo'shing. Ko'rinishli bo'lish uchun hech narsa qo'shmang.
4-bosqich — Bir-ikki komponentni chuqur tahlil (10–15 daqiqa)
Keng tarqalgan chuqur tahlil sohalari:
- Ma'lumotlar bazasi tanlovi va sxema (SQL va NoSQL, indekslash)
- Kesh qatlami (nima keshlash, chiqarish siyosati, keshni bekor qilish)
- API dizayni (REST va GraphQL, sahifalash, rate limiting)
- Xatolarni boshqarish (retry, circuit breaker, idempotentlik)
- 2-bosqichda topilgan to'siqni masshtablash
5-bosqich — To'siqlar va muqobillarni aniqlash (5 daqiqa)
Faol yakunlang: «Bu dizayndagi eng katta xavf — miqyoslashda asosiy ma'lumotlar bazasiga yagona yozish yo'li. Yechim — read replica yoki user ID bo'yicha bo'lish, bu operatsion murakkablikni oshiradi. Baholangan miqyosimiz uchun oddiy boshlagan bo'lardim va murakkablikdan oldin instrumentatsiya qilardim».
Toshkent suhbatlarida haqiqatan uchraydigan savollar
- Karsharing yoki yetkazib berish kuzatuv servisi (Yandex Go / Uzum burchagi)
- URL qisqartiruvchi yoki QR-kod generatori
- Xabarnoma tizimi (push, SMS, email fan-out)
- Qidiruv bilan e-commerce mahsulot katalogi
- Chat yoki xabar almashish tizimi
- Rate limiter
Aksariyat nomzodlarni boshlanoqida choʻktiruvchi uchta xato
- Ma'lumotlar bazasidan boshlash. Avval talablarni aniqlang va yuqori darajali oqimni chizing.
- So'ralmaganda haddan ziyod murakkablashtirish.10 000 foydalanuvchi uchun Kafka + Kubernetes + CDN — yashil emas, qizil bayroq.
- Ovoz chiqarib o'ylash o'rniga jim qolish.90 soniya ekranga tikilib o'tirish o'rniga «relatsion yoki hujjat omborini tanlashni o'ylayapman» deya fikrni ovoz chiqarib yuring.
Qanday mashq qilish
Haftasiga uch marta 30 daqiqa ovoz chiqarib dizayn tahlil qiling. Yuqoridagi ro'yxatdan bitta masala oling, 35 daqiqa taymer qo'ying, yozuvlarsiz besh bosqichli freymvorkni bajaring. Oxirida referens yechim bilan taqqoslang va o'tkazib yuborganlaringizni yozing. Olti sessiyadan so'ng freymvork avtomatik bo'lib qoladi.