Test topshiriqlarining ishlab chiquvchi hayotidagi o'rni haqida

Hayotingizda qancha texnik intervyu o'tkazgansiz?

Oxirgi besh yil davomida men har qanday tasavvurga ega va oʻziga xoslikdagi 35 ta texnik intervyuda qatnashdim – qish uchun goʻshtni jamoaviy xarid qilish boʻyicha qozoq startaplaridan tortib Germaniya va Amerika fintech xizmatlari va banklarigacha; dasturlash, yetkazib berish va boshqarishga e'tibor qaratgan holda; masofaviy va ofisda; cheklangan va cheksiz vaqt; stressli va xotirjam, turli tillarda.

Bu, men ish beruvchi sifatida o'zim o'tkazgan ~20 intervyu bilan bir qatorda - intervyular qiroli bo'lish uchun quyidagi kuzatuvni (dastlab mutlaqo tushunarsiz) qilishim va unda o'zimni o'rnatishim uchun etarli raqam: Ishonchim komilki, ko'p jihatdan juda ko'p intervyular tufayli, bu marginal odatga o'xshay boshladi, men o'z stekimni professional darajada o'rganib chiqdim va 10 yil davomida veb-ishlab chiqishda ishlagan bo'lsam ham, raqobatbardosh mutaxassis bo'ldim.

Ushbu maqola o'z sayohatining boshida turgan va hali o'z bilimlari chuqurligini tugatmagan dasturchilarga qaratilgan. Unda men test topshiriqlari va intervyularda beriladigan texnik savollarning katta ta'lim foydalari haqidagi tezisni kengaytirmoqchiman va barchani yangi yozilgan telegram botimga taklif qilmoqchiman. ActualizeBot, bu erda mening rejamga ko'ra, ular tugaguniga qadar kamida har kuni texnik intervyu olishingiz mumkin. Va ular tugamasligi uchun siz qiziqarli texnik topshiriq, savol yoki intervyu davomida boshdan kechirgan foydali/qiziqarli vaziyatni ham baham ko'rishingiz mumkin.

Quyida men sizga bot haqida ko'proq ma'lumot beraman, keling, avvalo, bu texnik savollar va vazifalarga javoblarni bilish va tushunish nima uchun juda muhimligini tushunib olaylik, hatto yillar davomida mustaqil loyihalarni muvaffaqiyatli amalga oshirayotgan bo'lsangiz ham.

Nega bizning fundamental bilimlarimiz sifati ko'p narsani talab qilmaydi?

Texnik intervyular, agar siz hali intervyu qiroli bo'lmagan bo'lsangiz, tana uchun jiddiy stress bo'lib, umuman ish qidirish - siz yangi mutaxassis bo'lasizmi, o'zgartiruvchimisiz yoki bittasida ishlagan dasturchi bo'lasizmi? uzoq vaqt davomida joy (va bizning vaqtimizda "uzoq" bir yil deb hisoblanishi mumkin).

Ko'pgina intervyularda bu stressni kuchaytiruvchi inson omili mavjud. Sizning suhbatdoshingiz Alena Vladimirskaya emas, balki oddiy dasturchi bo'lishi mumkin, undan adekvat vazifalarni va ularni baholashni kutish qiyin, yoki o'zining jiddiyligini engish uchun vaqtni kutadigan qattiq jamoa rahbari. Uning ko'zlari sizda, savol so'raydi: Siz uchun nima epchil!?

Bir kuni, bu savolga kerakli, ammo, tushunganingizdek, oldindan aytib bo'lmaydigan javobni bermasdan, men juda xursand bo'lgan taklifsiz qoldim.

Bu stress va umuman keraksiz harakatlardan qochishga harakat qilib, biz o'zimizni nafaqat tilning ba'zi bir asosiy xususiyatlarini bilmasligimizning baland ovozda namoyon bo'lishidan, balki bu jaholatni ozgina bo'lsa-da kamaytirishdan ham uzoqlashamiz.

Muammo shundaki, amalda bu sinfdagi muammolarni olishimiz mumkin bo'lgan joylar kam.
Bir necha joylarda ishlashga majbur bo'lgan har qanday ishlab chiquvchi intervyularda qo'yilgan fundamental yoki ijodiy muammolar kamdan-kam hollarda dasturchining real hayotda nima bilan shug'ullanayotganiga hech qanday aloqasi borligini tasdiqlaydi - sayyorada hech qanday rekursiyalar, grafiklar va asinxron liftni boshqarish tizimlari salbiy galaktikaning boshqa qo'lidagi tortishish. Afsuski.

Mening ona JavaScriptim bilan bog'liq holda, yaxshi misol bor - agar React.JS paydo bo'lmaganida, JavaScript dasturchilarining 98% u paydo bo'lganidan keyin 20 yildan ko'proq vaqt o'tgach, bog'lanish nima ekanligini bilmasdan muvaffaqiyatli yashashni davom ettirar edi. intervyularda bu haqda savollarni olish va bu juda mavhum kutubxonalar, ramkalar va modullarni ixtiro qilganlargina u bilan ishlashda davom etadilar. Bugungi kunda reaktsiya tufayli bu raqam 97% ga kamaydi.

Shubhasiz, ushbu vazifalarning "haqiqatdan ajratilishini" ko'rib, ko'plab ishlab chiquvchilar ularga e'tibor bermaydilar yoki ularga sho'ng'ish uchun vaqtni behuda sarflaydilar - va o'zlarining kundalik ishlari bilan shug'ullanishda davom etadilar, ya'ni majoziy qilib aytganda, nafaqat ishlab chiqarishni rivojlantirish konida yurishadi. mina detektorisiz, balki mina maydonida ekanliklarini ham bilmasdan.

Til bo'yicha fundamental bilimlarning etishmasligi qanday oqibatlarga olib keladi?

Bu savolga javob oddiy ko'rinadi, lekin negadir inson tabiati o'z yechimini doimo uzoq burchakka surib qo'yadi - va bu kichik va o'rta dasturchilarning hayotida qayg'uli rol o'ynaydi, ularning cho'qqilarga (va chuqurliklarga) yo'lini uzaytiradi. ) til bilimini bir necha yilga.

Har kuni yozishga odatlangan ramkalar va kutubxonalardan foydalangan holda dastur kodi, agar ular uni bajarishning turli jihatlarini etarli darajada tushunmasdan yozsa, ishonchli deb hisoblanmaydi. Bunga JavaScript olamidan yaqqol misol sifatida bir paytlar taraqqiyot dvigateli bo‘lgan va bugungi kunda o‘z-o‘zidan yopiq bilim sohasi bo‘lgan, boshqa tillardan ajralgan JQuery kutubxonasining taqdiri ko‘rsatilgan. bozor - yarim professional skriptlar shoshilinch ravishda yozilgan va kerak bo'lganda ishlaydigan arzon frilanserlarning yuklash tizimidagi bir xil tezkor sxemaga sovg'a sifatida.

Bunday mas'uliyatsiz yondashuv bilan ishlab chiqilgan loyihalarning kelajagi, garchi bexabarlikdan bo'lsa-da, prozaik va qisqa muddatli bo'ladi: vaqtni sezilarli darajada yo'qotish, muvaffaqiyatsizliklar, moliyaviy va obro'-e'tibor yo'qotishlari va natijada davom etish uchun ishtiyoqning pasayishi. hamkorlik.

Boshqa tomondan, dasturchi yo'lini tanlagan odam uchun uning nima qilayotganini tushunish zavqi bilan solishtirib bo'lmaydi. U baron Myunxauzen singari minalangan maydonda otda yugurayotganini tushundi. Aytishga hojat yo‘q, odobli ish beruvchi mina maydonidan o‘ylamay o‘tib ketayotgan odamlarni va hech narsani o‘ylamay yugurib, sakrashi mumkin bo‘lgan vaziyatda qadam tashlashga qaror qilmay qotib qolgan odamlarni aniq ko‘ra oladimi?

ActualizeBot

Intervyularning afzalliklarini ko'rib, shuningdek, bo'sh intervyularga o'tish mutlaqo axloqiy emasligini tushunib, men yangi boshlovchi yoki boshqa tilga o'tayotgan dasturchiga murojaat qilmasdan ta'lim mashg'ulotlari bilan shug'ullanishi mumkin bo'lgan bot yaratishni ajoyib deb o'yladim. haqiqiy intervyular shu darajada , bu men bilan sodir bo'lgan. Va dasturchilar qanday qilib o'zlari hal qilishlari kerak bo'lgan muammolarni muhokama qilishni va taqqoslashni yaxshi ko'rishlarini eslab, - ayniqsa, bu ahamiyatsiz narsa bo'lsa - men hamma narsa mos kelishini angladim, barcha shubhalarni va voilani rad etdim.

Hozirda bot 3 ta oddiy funksiyaga ega:

  • Yangi vazifalarni olish uchun ma'lum bir tilga/ramkaga obuna bo'lish. Siz obuna bo'lasiz va vazifalar kelishi bilan siz ularni kundalik axborot byulletenida olasiz
  • Vazifa yoki test topshirig'ini nashr qilish - Mening kitobimda ular almashish g'amxo'rlik deyishadi
  • Ajoyib nom generatori, uning yordamida siz nashr etayotgan topshiriq matni uchun eng maqbul imzoni tanlashingiz mumkin, shu jumladan feministlarsiz ayollar lug'atlari

Hozirda quyidagi tillarni tanlash mumkin: JavaScript, Java, Python, PHP, MySQL. Tanlov mening tushuncham chegaralari tufayli biroz cheklangan. Men habra hamjamiyatining yordami bilan ushbu ro'yxatga qo'shishga umid qilaman.

Bot sof rok-n-roll formatida ishga tushirilgan, hech narsa uchun to'lov kutilmaydi.
Unga ushbu havola orqali o'tishingiz mumkin: ActualizeBot

Texnik amalga oshirish haqida qisqacha

Bu bot bir nechta kichik loyihalardan biri boʻlib, men oʻzimning ochiq manbali miniframeworkning birinchi ommaviy versiyasini olib kelaman, bunda murakkab tuzilishga ega botlarni ishlab chiqish uchun Hobot deb nomlanadi va qattiqqoʻl odamlar uchun NPM da mavjud.

Ramka Telegraf.JS va TypeScript asosida qurilgan bo'lib, uning foydalanish namunasi bilan jihozlangan nolga teng birinchi versiyasini quyidagi manzilda ko'rish mumkin. github va darhol sinab ko'ring. Tez orada men tashqi tomondan odam uchun kengaytirilgan va taralgan 0.0.2 versiyasini yuklayman va unga alohida maqola bag'ishlayman (magistral). Agar u men uchun bo'lgani kabi kimdir uchun ham tegishli bo'lib chiqsa, xursand bo'laman.

Xo'sh, qancha intervyuda qatnashishingiz kerak edi?
Ishonchim komilki, sizda aytadigan narsangiz bor!

Manba: www.habr.com

a Izoh qo'shish