Engineering Notes


Kanal geosi va tili: O‘zbekiston, O‘zbekcha


Kanalda asosan backend engineeringga oid postlar yozib boriladi.
Ba'zi postlarda xatoliklar bor.
Postlar foydali bo’lgan bo’lsa adminni duo qilib qo’ying. Rahmat.
Contact: @Bobosher_Musurmonov
LinkedIn: https://www.linkedin.com/in/bobosher-musurmonov

Связанные каналы  |  Похожие каналы

Kanal geosi va tili
O‘zbekiston, O‘zbekcha
Statistika
Postlar filtri


Me: *watches a couple of videos about mechanical keyboards on Youtube*

Youtube: THIS GUY IS GONNA BUY AT LEAST 10 KEYBOARDS!

Instagram: Somebody said a mechanical keyboard?👀

AliExpress: Here are the cheapest mechanical keyboards, I promise they are original.

Ad on a random tech forum: Hey, maybe a new keyboard can fix your bug?


Bizda ko'pchilik dasturchilardan maqsadini so'rasang juda katta qismida yoki oxiri borib FAANGda ishlash yoki o'zining outsource kompaniyasini ochib biznes qilish bo'lib chiqadi. G'alati holat. Bo'ldimi, shumi dasturlash? Bu bilan men FAANGga kirish yoki kompaniya ochish oson demoqchi emasman (ikkalasigayam hali menga aaancha bor), lekin ma'lum bir kompaniyada ishlashni kar'eraga maqsad qilib olish g'alatimasmi?

866 0 3 33 54



O'rtog'lar bir narsani tushuninglar, linked list data structureni uni reverse qilish uchun o'ylab topishmagan ))


Oxirgi vaqtlarda ko'p narsani dark modedan light modega qaytarib ishlatayapman. Yosh o'tayapti shekilli.


Qiziq, nega O'zbekistondagi ko'p IT kompaniyalar OFB, KDBga o'xshash customer supportga tupurib qo'ygan, bitta mobile appni eplab yoza olmaydigan banklar bilan ishlaydi?



2.6k 0 19 10 12

Bugun ICPC saralashda kimlar qatnashdi?
Eng zo'r savol qaysi bo'ldi?


Anchadan beri mechanical keyboardga o'tishni mo'ljallab yuribman. Magic keyboardga o'rganib qolganim uchun low profile mechanical keyboardlarni qarab ko'rayapman. Yaqinda Keychron K3 Maxni test qilib ko'rdim. Build quality kutganimdan ancha past ekan. Typing experience ham unchalik yoqmadi (brown switch bilan). Xullas, olmadim.


Microsoftning Teams, Outlookka o'xshagan productlarining rostdan sifati pastmi yoki oldin ishlatmaganim uchun menga shunday tuyulayaptimi?


Mana bu savol kecha ICPC training sessionda tushdi, originali 2022-2023 NWERCda tushgan ekan (G savol). Saidolim aka o'shanda O(n^2) tc yechim bergandilar, bu yerda O(n) tc yechim so'ralgan ekan. Kecha biz yecha olmadik, lekin ancha sodda ekan. Xo'sh, siz O(n) tc yechim topa olasizmi?


Team leadim:
"Ochig'ini aytsam, xato qilmaydigan, boshqalardan yordam so'ramasdan o'zining ishini doim qoyillatib bajaradigan engineerlardan qo'rqaman. Ular yoki o'ta aqlli nerd bo'ladi, yoki necha yildan beri komfort zonasidan chiqmay bitta ishni qayta-qayta qilib yurgan bo'ladi*. Ikkinchisi bo'lishi ehtimoli juda katta."

*Umuman olganda, komfort zonada qolish har doim ham yomon emas. Faqat bu bizning hozirgi jamoada zararga ishlaydi.




Knowledge of the day:
Fast finite field implementations, Barrett reduction, Montgomery multiplication


Aytgancha, bu yil ICPCda qatnashayotganlar bormi?
Tayyorgarlik qanday ketayapti?


Davomi

3. Engineerga vazifa emas, muammo bering. Tayyor yechimni implement qilish oson, yechimni va ayniqsa yaxshi yechimni topish qiyin. Agar manager yoki team lead sifatida engineerlarga "A tildagi B frameworkda C arxitekturada web server yoz, databaseda X, Y, Z tablelar bo'lsin" shaklidagi vazifa berayotgan bo'lsangiz unda birinchidan siz engineerlardan to'liq foydalanmayapsiz, ikkinchidan siz o'ylagan yechim optimal bo'lmasligi mumkin. Yaxshisi, "bizda A muammo bor, shuni hal qilish uchun bizga B imkoniyatga ega yangi servis kerak" deb muammoni o'rtaga tashlang. Shunda bir qancha alternativ yechimlarni ko'rib, hamma tomondan analiz qilib, eng yaxshi yaxshi yechimni tanlash imkoni bo'ladi. Lekin odatda call davomida yaxshi yechim o'ylab topish ko'p vaqt va ma'lum bir sohada chuqur bilim talab qilishi mumkin. Bunday holatda bir kishiga muammoni chuqur o'rganish va potensial yechimlar ustida ishlash vazifa qilib beriladi (yechimni implement qilish emas) va keyin berilgan yechimlarni butun jamoa bilan analiz qilib, qaror qabul qilishingiz mumkin. Implement qilish shundan keyingina boshlanadi.

4. Djangochi emas, engineer bo'ling. Bugun application serverda, ertaga databaseda, indinga networkingdagi muammoni hal qilishingizga to'g'ri kelishi mumkin. Albatta ishga kirishdan oldin bularning hammasini chuqur o'rgana olmaysiz, shuning uchun "T shaped" engineer bo'lishga harakat qiling. Ya'ni bilimingiz T harfidagiga o'xshab biror tor sohada chuqur bo'lishi bilan birga boshqa ko'plab sohalardan ham ma'lum darajada xabardor bo'lishingiz siz uchun ancha foydali, shunda zarur bo'lganida boshqa bir sohani chuqurroq o'rganishingiz oson bo'ladi (ya'ni T ni π ga aylantirish oson bo'ladi). Menimcha lokal bozordagi eng katta muammolardan biri ko'p sohalarni yuzaki biladigan lekin birortasini chuqur tushunmaydigan (– shaped) yoki bir tor sohani chuqur biladigan lekin boshqa sohalarni umuman tushunmaydigan (I shaped) engineerlar. Bundan tashqari bir narsani chuqurroq o'rganib olib, keyin hamma joyga shuni tiqishtiradigan (L shaped) engineerlar ham odatda jamoaga foydadan ko'proq zarar keltiradi, ToDo app qilish uchun ham microservice quradiganlar bunga misol.

5. Qilgan har bir ishingizni va o'ylagan har bir yechimingizni yozib boring. Projectda to'g'ridan-to'g'ri sizga bog'liq narsalar minimal bo'lishi kerak, yechimlar va g'oyalar ham shular qatorida. Ertaga siz ishdan ketsangiz ham yozgan narsalaringiz turadi. Bu kelajakda boshqalarning vaqtini isrof qilmaslik uchun qilishingiz mumkin bo'lgan eng yaxshi narsalardan biri. Bundan tashqari menga o'xshab xotirangiz yomonroq bo'lsa 1 hafta oldin tugata olmagan ishingizga qaytganingizda oldingi safar nima qilganingiz/qilmoqchi bo'lganingizni yozib qo'yganingiz uchun o'zingizga o'zingiz rahmat aytasiz.

@boboshersnotes

3k 3 18 2 31

Hozirgi ish joyimga kirganimga 2 oy bo'ldi. Yangi jamoada texnik bilimlardan tashqari "work culture" tomondan ham ko'p narsa o'rganayapman. Quyida shaxsiy fikrimcha bizda ham kengroq adaptatsiya qilishga arziydigan ba'zi qoidalar. E'tibor qilsangiz bularning hammasi oddiy narsalar, lekin negadir ba'zilar shularga ham amal qilmaydi.

1. Sizning vaqtingiz qimmat, boshqalarniki undan ham qimmat. Hamkasbingizning ishi sizga bog'liq bo'lsa iloji boricha tezroq bajarib bering yoki eng kamida qachon qilib bera olishingzni ayting. Schedule qilingan call/meetinglarga vaqtida qatnashing, biror sabab bilan kech qolsangiz yoki qatnasha olmasangiz qolganlarni bu haqida iloji boricha ertaroq ogohlantiring. Managerlar va team leadlar uchun: callga faqat kerakli odamlarni chaqiring va iloji boricha tezroq tugating. Daily standupda jamoadagi faqat 1 kishiga aloqador task ustida gaplashish uchun butun jamoani 1 soat ushlab turmang.

2. Vaqt qimmat, fokus undan ham qimmat. Fokusning 2 ta asosiy dushmani bor, shulardan iloji boricha qochishga harakat qiling:
a) Context switch, ya'ni bir vazifadandan boshqasiga o'tish. Masalan, fokus bilan ishlayotgan jamoadoshingizga "hey, tezda mana bu narsani qilib bera olasanmi, 5 minut vaqt ketadi" desangiz u ishning o'zini qilishga 5 minut vaqt ketishi mumkin, lekin jamoadoshingiz yana o'zining ishiga qaytib avvalgidek fokus qilishiga yana kamida 10-15 minut ketadi.
b) Unpredictibility, ya'ni oldindan rejalashtirilmagan ishlar. Masalan, jamoadoshingiz yoki qo'l ostingizdagi ishchini oldindan ogohlantirmasdan "hey, hozir 10 minutlik qisqa callga qatnasha olasanmi" desangiz u callga kirib nima bo'layotganini tushunib olgunicha va calldan keyin oldingi qilayotgan ishiga qaytgunicha ancha vaqt o'tadi. Lekin call oldindan belgilangan bo'lsa u ma'lum darajada tayyor bo'ladi va context switch ancha oson kechadi.

Davomi keyingi postda


Sololearnni eslaydiganlar bormi?
Dasturlash bo'yicha savollarni yechib birga-bir "jang" qilsa bo'lardi.

Python communitydagi tanishlar anchadan beri shuning o'zbekchasi – Tandir ustida ishlashayapti. Foydali va juda qiziq dastur, o'zim ham anchadan beri test qilishda qatnashib turaman. Bundan tashqari o'ynash uchun savol yuborib, pul mukofotiga ega bo'lishingiz mumkin. App Store/Play Storeda "Tandir" deb izlasangiz chiqadi, Telegram kanaliyam bor. Anaqqisa, tavsuyu.


Oldinlari neovimni mechanical keyboard bilan ishlatish kerak deyishsa ishonmasdim ))

P.S. Keyboard tavsiya qilinglar.


my.mehnat.uz'da o'zim ishlamagan joyda 10 kunlik mehnat shartnomasi qo'shilib qolibdi. Kompaniya direktori bilan gaplashib ko'rsam qanaqadir "yoshlarni ish bilan ta'minlash" dasturi doirasida 70 kishi uning kompaniyasiga majburiy biriktirilgani, hozir hammasini qaytadan bo'shatib chiqayotganini aytdi. Ro'yxat "tepadan" kelib, avtomatik mehnat shartnomasi tuzilgani (mening imzoimsiz), ro'yxatdagi odamlarni o'zi ham tanimasligini aytayapti. Davlat idoralari fuqarolar shaxsiy ma'lumotlari bilan xohlagancha o'yin qilayapti. Molxona.

2.7k 0 20 14 55
20 ta oxirgi post ko‘rsatilgan.