“Biz bir-birimizga ishonamiz. Masalan, bizda umuman maosh yo'q” - Peopleware muallifi Tim Lister bilan uzoq suhbat

“Biz bir-birimizga ishonamiz. Masalan, bizda umuman maosh yo'q” - Peopleware muallifi Tim Lister bilan uzoq suhbat

Tim Lister - kitoblarning hammuallifi

  • “Inson omili. Muvaffaqiyatli loyihalar va jamoalar” (asl kitob “Odamlar” deb nomlanadi)
  • "Ayiqlar bilan vals: dasturiy ta'minot loyihalarida xavflarni boshqarish"
  • “Adrenalin aqldan ozgan va naqshlar bilan zombilashgan. Loyiha jamoalarining xatti-harakatlari namunalari"

Bu kitoblarning barchasi o'z sohasida klassik bo'lib, hamkasblari bilan birgalikda yozilgan Atlantika tizimlari gildiyasi. Rossiyada uning hamkasblari eng mashhur - Tom DeMarko и Piter Xruschka, u ham ko'plab mashhur asarlar yozgan.

Tim 40 yilda dasturiy ta'minotni ishlab chiqishda 1975 yillik tajribaga ega (bu habrapostni yozganlarning hech biri bu yil tug'ilmagan), Tim allaqachon Yourdon Inc.ning ijrochi vitse-prezidenti edi. Endi u vaqti-vaqti bilan tashrif buyurish bilan maslahatlashish, o'qitish va yozish bilan shug'ullanadi hisobotlar bilan butun dunyo bo'ylab konferentsiyalar.

Biz Tim Lister bilan ayniqsa Xabr uchun intervyu oldik. U DevOops 2019 konferentsiyasini ochadi va bizda kitoblar va boshqalar haqida juda ko'p savollar bor. Suhbatni konferentsiya dastur qo'mitasidan Mixail Drujinin va Oleg Chiruxin olib boradi.

Maykl: Hozir nima qilayotganingiz haqida bir necha so'z ayta olasizmi?

Tim: Men Atlantika Tizimlari Gildiyasining rahbariman. Gildiyada olti kishimiz, biz o'zimizni direktorlar deb ataymiz. AQShda uchtasi va Evropada uchtasi - shuning uchun Gildiya Atlantika deb ataladi. Biz shuncha yil birgamizki, ularni sanab bo'lmaydi. Hammamizning o'z ixtisoslarimiz bor. Men so'nggi o'n yil yoki undan ko'proq vaqt davomida mijozlar bilan ishlayapman. Mening loyihalarim nafaqat boshqaruvni, balki talablarni belgilash, loyihani rejalashtirish va baholashni ham o'z ichiga oladi. Ko'rinishidan, yomon boshlangan loyihalar odatda yomon tugaydi. Shu sababli, barcha tadbirlar haqiqatan ham yaxshi o'ylangan va muvofiqlashtirilgan, ijodkorlarning g'oyalari birlashtirilganligiga ishonch hosil qilish kerak. Nima qilayotganingizni va nima uchun qilayotganingizni o'ylab ko'rishga arziydi. Loyihani yakunlash uchun qanday strategiyalardan foydalanish kerak.

Men ko'p yillar davomida mijozlarga turli yo'llar bilan maslahat berdim. Qiziqarli misol - tizza va son jarrohlik uchun robotlar ishlab chiqaradigan kompaniya. Jarroh butunlay mustaqil ravishda operatsiya qilmaydi, lekin robotdan foydalanadi. Ochig'ini aytganda, bu erda xavfsizlik muhim. Ammo muammoni hal qilishga qaratilgan odamlar bilan talablarni muhokama qilmoqchi bo'lganingizda ... Bu g'alati tuyuladi, lekin AQShda bor FDA (Federal Drug Administration), bu robotlar kabi mahsulotlarga litsenziya beradi. Biror narsani sotishdan va uni tirik odamlarga ishlatishdan oldin siz litsenziya olishingiz kerak. Shartlardan biri sizning talablaringizni, testlar nima ekanligini, ularni qanday sinovdan o'tkazganingizni, test natijalari qanday ekanligini ko'rsatishdir. Agar siz talablarni o'zgartirsangiz, unda siz bu katta sinov jarayonini qayta-qayta o'tkazishingiz kerak. Mijozlarimiz o'z talablariga ilovalarning vizual dizaynini kiritishga muvaffaq bo'lishdi. Ularda to'g'ridan-to'g'ri talablarning bir qismi sifatida ekran tasvirlari bor edi. Biz ularni tortib olishimiz va tushuntirishimiz kerakki, bu dasturlarning aksariyati tizzalar va sonlar, kamera bilan bog'liq narsalar va boshqalar haqida hech narsa bilmaydi. Biz talablar hujjatlarini qayta yozishimiz kerak, shunda ular hech qachon o'zgarmaydi, agar ba'zi muhim shartlar o'zgarmasa. Vizual dizayn talablarga mos kelmasa, mahsulotni yangilash ancha tezroq bo'ladi. Bizning vazifamiz tizza, son, beldagi operatsiyalar bilan shug'ullanadigan elementlarni topish, ularni alohida hujjatlarga chiqarish va bu asosiy talablar bo'lishini aytishdir. Keling, tizza operatsiyalari bo'yicha izolyatsiya qilingan talablar guruhini yarataylik. Bu bizga yanada barqaror talablar to'plamini yaratishga imkon beradi. Biz aniq robotlar haqida emas, balki butun mahsulot qatori haqida gaplashamiz.

Ko'p ish qilindi, lekin ular hali ham ma'nosiz va zaruratsiz haftalar va oylar davomida takroriy sinovlarni o'tkazgan joylarga etib borishdi, chunki ularning qog'ozda tasvirlangan talablari tizimlar qurilgan haqiqiy talablarga to'g'ri kelmadi. FDA ularga har safar aytdi: sizning talablaringiz o'zgardi, endi siz hamma narsani noldan tekshirishingiz kerak. Butun mahsulotni to'liq qayta tekshirish korxonani o'ldirdi.

Shunday qilib, siz o'zingizni qiziq bir narsaning boshida topsangiz, shunday ajoyib vazifalar mavjud va birinchi harakatlar o'yinning keyingi qoidalarini belgilaydi. Agar siz ushbu dastlabki faoliyat ham boshqaruv, ham texnik nuqtai nazardan yaxshi ishlay boshlaganiga ishonch hosil qilsangiz, ajoyib loyiha bilan yakunlanishingiz mumkin. Ammo agar bu qism relsdan chiqib ketgan bo'lsa va biror joyda noto'g'ri ketgan bo'lsa, asosiy kelishuvlarni topa olmasangiz ... yo'q, bu sizning loyihangiz albatta muvaffaqiyatsiz bo'ladi degani emas. Ammo endi siz: "Biz ajoyib ish qildik, biz hamma narsani juda samarali qildik" deb ayta olmaysiz. Mijozlar bilan muloqot qilishda men qiladigan narsalarim shu.

Maykl: Ya'ni, siz loyihalarni ishga tushirasiz, qandaydir startni qilasiz va relslar to'g'ri yo'nalishda ketayotganini tekshirasizmi?

Tim: Shuningdek, bizda jumboqning barcha qismlarini qanday qilib birlashtirish bo'yicha g'oyalar mavjud: bizga qanday ko'nikmalar kerak, ular qachon kerak, jamoaning o'zagi qanday ko'rinishga ega va boshqa shunga o'xshash asosiy narsalar. Bizga to'liq kunlik ishchilar kerakmi yoki kimnidir yarim kunlik ishga olishimiz mumkinmi? Rejalashtirish, boshqarish. Savollar: Ushbu loyiha uchun eng muhimi nima? Bunga qanday erishish mumkin? Ushbu mahsulot yoki loyiha haqida nimalarni bilamiz, qanday xavf-xatarlar bor va noma'lumlar qayerda yotadi, bularning barchasi bilan qanday kurashishimiz kerak? Albatta, bu vaqtda kimdir “Agile-chi?!” deb baqirishni boshlaydi. Yaxshi, siz hammangiz moslashuvchansiz, lekin nima bo'ladi? Loyiha aynan qanday ko'rinishga ega, uni loyihaga mos keladigan tarzda qanday olib chiqmoqchisiz? Siz shunchaki "bizning yondashuvimiz hamma narsaga mos keladi, biz Scrum jamoasimiz!" Deb ayta olmaysiz. Bu bema'nilik va bema'nilik. Keyin qayerga bormoqchisiz, nima uchun bu ishlashi kerak, gap qayerda? Men mijozlarimga ushbu savollarning barchasi haqida o'ylashni o'rgataman.

19 yil chaqqonlik

Maykl: Agile-da odamlar ko'pincha hech narsani oldindan belgilamaslikka harakat qilishadi, lekin imkon qadar kechroq qaror qabul qilishadi: biz juda kattamiz, men umumiy arxitektura haqida o'ylamayman. Buning o'rniga men boshqa narsalar haqida o'ylamayman, men hozir mijozga ishlaydigan narsani etkazib beraman;

Tim: Menimcha, tezkor metodologiyalardan boshlab Agile Manifesti 2001 yilda sanoatning ko'zini ochdi. Ammo boshqa tomondan, hech narsa mukammal emas. Men iterativ rivojlanish tarafdoriman. Ko'pgina loyihalarda iteratsiya juda mantiqiy. Ammo siz o'ylab ko'rishingiz kerak bo'lgan savol: mahsulot chiqarilgandan va foydalanishdan keyin qancha vaqt xizmat qiladi? Bu boshqa narsa bilan almashtirilgunga qadar olti oy davom etadigan mahsulotmi? Yoki bu ko'p yillar davomida ishlaydigan mahsulotmi? Albatta, nomlarini aytmayman, lekin... Nyu-York va uning moliyaviy jamiyatida eng fundamental tizimlar juda eski. Bu ajoyib. Siz ularga qaraysiz va o'ylaysiz, agar siz o'tmishga, 1994 yilga qaytsangiz va ishlab chiquvchilarga aytasiz: "Men kelajakdan, 2019 yildan keldim. Ushbu tizimni kerakli vaqtgacha ishlab chiqing. Uni kengaytirilishi mumkin, arxitektura haqida o'ylang. Keyinchalik u yigirma besh yildan ortiq vaqt davomida takomillashtiriladi. Agar siz rivojlanishni biroz kechiktirsangiz, hech kim sezmaydi! ” Uzoq muddatda narsalarni taxmin qilayotganda, jami qancha turadi, deb hisoblashingiz kerak. Ba'zida yaxshi ishlab chiqilgan arxitektura haqiqatan ham bunga arziydi, ba'zida esa bunga loyiq emas. Biz atrofga qarashimiz va o'zimizga savol berishimiz kerak: biz bunday qaror uchun to'g'ri vaziyatdamizmi?

Shunday qilib, "Biz epchillik tarafdorimiz, mijozning o'zi bizga nimani olishni istayotganini aytadi" kabi g'oya - bu juda sodda. Mijozlar hatto nimani xohlashlarini bilishmaydi va bundan ham ko'proq nima olishlari mumkinligini bilishmaydi. Ba'zilar dalillar sifatida tarixiy misollarni keltira boshlaydilar, men buni allaqachon ko'rganman. Ammo texnik jihatdan rivojlangan odamlar odatda buni aytmaydilar. Ular: "Bu 2019 yil, bu bizda mavjud imkoniyatlar va biz bu narsalarga qarashimizni butunlay o'zgartirishimiz mumkin!" Mavjud echimlarga taqlid qilish, ularni biroz chiroyli va taroqli qilish o'rniga, ba'zan siz tashqariga chiqib: "Keling, bu erda nima qilmoqchi bo'lganimizni butunlay qayta kashf qilaylik!"

Va menimcha, ko'pchilik mijozlar muammo haqida shunday o'ylashlari mumkin emas. Ular faqat o'zlarida bor narsani ko'radilar, hammasi shu. Shundan so'ng ular "keling, buni biroz soddalashtiraylik" yoki odatda nima deyishsa, kabi so'rovlar bilan keladi. Lekin biz ofitsiant yoki ofitsiant emasmiz, shuning uchun biz qanchalik ahmoqona bo'lib chiqmasin, buyurtma olib, keyin oshxonada pishiramiz. Biz ularning rahbarlarimiz. Biz ularning ko‘zlarini ochib aytishimiz kerak: he, bu yerda bizda yangi imkoniyatlar bor! Sizning biznesingizning ushbu qismini amalga oshirish usulini haqiqatan ham o'zgartirishimiz mumkinligini tushunasizmi? Agile bilan bog'liq muammolardan biri shundaki, u imkoniyat nima, muammo nima, biz nima qilishimiz kerak, mavjud texnologiyalar ushbu vaziyatga eng mos keladi.

Ehtimol, men bu erda haddan tashqari shubhalanyapman: Agile jamiyatida juda ko'p ajoyib narsalar sodir bo'ladi. Lekin menda bir muammo borki, odamlar loyihani belgilash o'rniga qo'llarini tashlay boshlaydilar. Men bu erda so'ragan bo'lardim - biz nima qilyapmiz, buni qanday qilamiz? Va qandaydir sehrli tarzda har doim mijoz hammadan ko'ra yaxshiroq bilishi kerakligi ayon bo'ladi. Ammo mijoz faqat kimdir tomonidan qurilgan narsalardan tanlaganida yaxshi biladi. Agar men mashina sotib olmoqchi bo'lsam va oilamning byudjetini bilsam, tezda hayot tarzimga mos keladigan mashinani tanlayman. Bu erda men hamma narsani hammadan yaxshiroq bilaman! Ammo shuni yodda tutingki, kimdir allaqachon mashinalarni yasagan. Men yangi mashinani qanday ixtiro qilishni bilmayman, men mutaxassis emasman. Biz maxsus yoki ba'zi maxsus mahsulotlarni yaratganimizda, mijozning ovozini hisobga olish kerak, ammo bu endi yagona ovoz emas.

Oleg: Siz Agile Manifestini eslatib o'tdingiz. Muammoni zamonaviy tushunishni hisobga olgan holda uni qandaydir tarzda yangilashimiz yoki qayta ko'rib chiqishimiz kerakmi?

Tim: Men unga tegmayman. Menimcha, bu ajoyib tarixiy hujjat. Aytmoqchimanki, u qanday bo'lsa. U 19 yoshga to'ldi, qariydi, lekin o'z vaqtida inqilob qildi. Uning yaxshi qilgani shundaki, u reaktsiyaga sabab bo'ldi va odamlar u haqida pichirlay boshladilar. Siz, ehtimol, 2001 yilda hali sanoatda ishlamagan edingiz, lekin keyin hamma jarayonlar bo'yicha ishladi. Dasturiy ta'minot muhandisligi instituti, dasturiy ta'minotning to'liqligi modelining (CMMI) besh darajasi. Qadimgi qadimiylikning bunday afsonalari sizga nimanidir aytib beradimi, bilmayman, lekin keyin bu yutuq edi. Avvaliga odamlar, agar jarayonlar to'g'ri o'rnatilgan bo'lsa, unda muammolar o'z-o'zidan yo'qoladi, deb ishonishgan. Va keyin Manifest keladi va shunday deydi: "Yo'q, yo'q, yo'q - biz jarayonlarga emas, balki odamlarga asoslanamiz." Biz dasturiy ta'minotni ishlab chiqish ustamiz. Biz ideal jarayon sarob ekanligini tushunamiz, bu sodir bo'lmaydi. Loyihalarda juda ko'p o'ziga xoslik mavjud, barcha loyihalar uchun bitta mukammal jarayon g'oyasi hech qanday ma'noga ega emas. Muammolar juda murakkab bo'lib, hamma narsaning yagona yechimi borligini da'vo qilish uchun (salom, nirvana).

Men kelajakka qarashni o'ylamayman, lekin shuni aytamanki, odamlar endi loyihalar haqida ko'proq o'ylay boshladilar. Menimcha, Agile Manifesti sakrab chiqib: “Hey! Siz kemadasiz va bu kemani o'zingiz boshqarasiz. Siz qaror qabul qilishingiz kerak bo'ladi - biz barcha holatlar uchun universal retseptni taklif qilmaymiz. Siz kemaning ekipajisiz va agar siz etarlicha yaxshi bo'lsangiz, maqsadingizga yo'l topishingiz mumkin. Sizdan oldin ham boshqa kemalar bo‘lgan, sizdan keyin ham boshqa kemalar bo‘ladi, lekin baribir, qaysidir ma’noda sayohatingiz betakrordir”. Shunga o'xshash narsa! Bu fikrlash usuli. Men uchun quyosh ostida yangi hech narsa yo'q, odamlar oldin suzib ketishgan va yana suzib ketishadi, lekin siz uchun bu sizning asosiy sayohatingiz va men sizga aniq nima bo'lishini aytmayman. Siz jamoada muvofiqlashtirilgan ishlash ko'nikmalariga ega bo'lishingiz kerak va agar sizda ular haqiqatan ham mavjud bo'lsa, hamma narsa amalga oshadi va siz xohlagan joyga erishasiz.

Peopleware: 30 yildan keyin

Oleg: Peopleware inqilob va Manifest bo'lganmi?

Tim: Peopleware... Tom va men bu kitobni yozgan edik, lekin bu shunday bo'ladi deb o'ylamagan edik. Bu qandaydir tarzda ko'plab odamlarning g'oyalari bilan rezonanslashdi. Bu shunday deyilgan birinchi kitob edi: dasturiy ta'minotni ishlab chiqish - bu juda inson talab qiladigan faoliyat. Texnik tabiatimizga qaramay, biz katta, hatto ulkan, juda murakkab narsalarni qurayotgan odamlar hamjamiyatimiz. Hech kim yolg'iz bunday narsalarni yarata olmaydi, to'g'rimi? Shunday qilib, "jamoa" g'oyasi juda muhim bo'ldi. Va nafaqat boshqaruv nuqtai nazaridan, balki noma'lumlar to'plami bilan haqiqatan ham murakkab chuqur muammolarni hal qilish uchun birlashgan texnik odamlar uchun. Shaxsan men uchun bu mening faoliyatim davomida aql-zakovat uchun katta sinov bo'ldi. Va bu erda siz aytishingiz kerak: ha, bu muammo men o'zim hal qila olmayman, lekin birgalikda biz g'ururlanishimiz mumkin bo'lgan oqlangan yechimni topa olamiz. Menimcha, aynan shu fikr eng ko‘p aks-sado bergan. Vaqtning bir qismini o'zimiz ishlaymiz, bir qismini guruhning bir qismi sifatida ishlaymiz va ko'pincha qaror guruh tomonidan qabul qilinadi. Guruhdagi muammolarni hal qilish tezda murakkab loyihalarning muhim xususiyatiga aylandi.

Tim juda ko'p nutq so'zlagan bo'lishiga qaramay, ularning juda oz qismi YouTube-da joylashtirilgan. Siz 2007 yildagi "Odamlar vositalarining qaytishi" hisobotini ko'rishingiz mumkin. Sifat, albatta, ko'p narsani orzu qiladi.

Maykl: Kitob nashr etilgandan keyin so'nggi 30 yil ichida biror narsa o'zgarganmi?

Tim: Siz bunga turli tomonlardan qarashingiz mumkin. Sotsiologik nuqtai nazardan gapiradigan bo'lsak... bir vaqtlar, oddiyroq vaqtlarda siz va sizning jamoangiz bir idorada o'tirgansiz. Siz har kuni yaqin bo'lishingiz, birga qahva ichishingiz va ishni muhokama qilishingiz mumkin. Haqiqatan ham o'zgargan narsa shundaki, jamoalar endi geografik jihatdan, turli mamlakatlar va vaqt zonalarida taqsimlanishi mumkin, ammo ular hali ham bir xil muammo ustida ishlamoqda va bu butunlay yangi murakkablik qatlamini qo'shadi. Bu eski maktabdek tuyulishi mumkin, lekin siz hammangiz birga bo'lib, birga ishlayotgan va siz hamkasbingizning oldiga borib: “Qarang, men nimani kashf qildim, bu sizga qanday yoqadi?” deyishingiz mumkin bo'lgan yuzma-yuz muloqotga o'xshash narsa yo'q. Yuzma-yuz suhbatlar norasmiy muloqotga o'tishning tezkor usulini ta'minlaydi va menimcha, bu tezkor ishqibozlarga ham yoqadi. Va men ham xavotirdaman, chunki aslida dunyo juda kichik bo'lib chiqdi va endi hamma taqsimlangan jamoalar bilan qoplangan va hammasi juda murakkab.

Biz hammamiz DevOps-da yashaymiz

Maykl: Hatto konferentsiya dastur qo'mitasi nuqtai nazaridan ham, bizda Kaliforniyada, Nyu-Yorkda, Evropada, Rossiyada odamlar bor ... Singapurda hali hech kim yo'q. Geografiyadagi farq juda katta va odamlar yanada ko'proq tarqala boshladilar. Agar biz rivojlanish haqida gapiradigan bo'lsak, bizga devoplar va jamoalar o'rtasidagi to'siqlarni buzish haqida ko'proq ma'lumot bera olasizmi? Hamma o‘z bunkerida o‘tiribdi, endi bunkerlar qulab tushyapti, degan tushuncha bor, bu o‘xshatish haqida qanday fikrdasiz?

Tim: Menimcha, so'nggi texnologik yutuqlarni hisobga olgan holda, devops katta ahamiyatga ega. Ilgari sizda ishlab chiquvchilar va ma'murlar guruhlari bor edi, ular ishladilar, ishladilar, ishladilar va bir nuqtada siz administratorlarga kelib, uni ishlab chiqarishga chiqarishingiz mumkin bo'lgan narsa paydo bo'ldi. Va bu erda bunker haqida suhbat boshlandi, chunki administratorlar qandaydir ittifoqchilar, hech bo'lmaganda dushmanlar emas, lekin siz ular bilan hamma narsa ishlab chiqarishga tayyor bo'lganda gaplashdingiz. Siz ularning oldiga biror narsa bilan borib: qarang, bizda qanday dastur bor, lekin siz ushbu ilovani chiqara olasizmi? Va endi etkazib berishning butun kontseptsiyasi yaxshi tomonga o'zgardi. Aytmoqchimanki, siz o'zgarishlarni tezda bosib o'tishingiz mumkin degan fikr bor edi. Biz mahsulotlarni tezda yangilashimiz mumkin. Noutbukimda Firefox ochilib, “Hoy, biz sizning Firefox-ni fonda yangiladik va bir daqiqangiz boʻlsa, shu yerni bosing va biz sizga eng soʻnggi versiyani beramiz”, desa, doim tabassum qilaman. Va men: "Ha, bolam!" Men uxlab yotganimda, ular mening kompyuterimda menga yangi nashrni etkazib berish ustida ishlashdi. Bu ajoyib, aql bovar qilmaydigan.

Ammo bu erda qiyinchilik bor: dasturiy ta'minotni yangilash bilan sizda bu xususiyat mavjud, ammo odamlarni integratsiya qilish ancha qiyinroq. DevOops-ning asosiy nutqida men aytmoqchi bo'lgan narsa shundaki, bizda hozir har qachongidan ham ko'proq o'yinchilar bor. Agar siz faqat bitta jamoada ishtirok etgan barcha haqida o'ylasangiz .... Siz buni jamoa sifatida o'ylab ko'rdingiz va bu shunchaki dasturchilar jamoasi emas. Bular sinovchilar, loyiha menejerlari va boshqa bir qancha odamlar. Va har kimning dunyoga o'z qarashlari bor. Mahsulot menejerlari loyiha menejerlaridan butunlay farq qiladi. Adminlarning o'z vazifalari bor. Nima bo'layotganidan xabardor bo'lishni davom ettirish va aqldan ozmaslik uchun barcha ishtirokchilarni muvofiqlashtirish juda qiyin muammoga aylanadi. Guruhning vazifalari va hamma uchun tegishli bo'lgan vazifalarni ajratish kerak. Bu juda qiyin vazifa. Boshqa tomondan, menimcha, hammasi ko'p yillar oldingiga qaraganda ancha yaxshi. Aynan shu yo'lda odamlar o'sadi va o'zini to'g'ri tutishni o'rganadi. Integratsiyani amalga oshirganingizda, dasturiy ta'minot so'nggi daqiqada qutidagi jak kabi sudralib ketmasligi uchun hech qanday er osti ishlanmasi bo'lmasligi kerakligini tushunasiz: biz bu erda nima qilganimizni qarang! G'oya shundan iboratki, siz integratsiya va rivojlanishni amalga oshira olasiz va oxirida siz toza va iterativ tarzda chiqasiz. Bularning barchasi men uchun juda ko'p narsani anglatadi. Bu tizim foydalanuvchilari va mijozingiz uchun ko'proq qiymat yaratish imkonini beradi.

Maykl: Devopsning butun g'oyasi mazmunli ishlanmalarni imkon qadar tezroq etkazishdir. Ko'ryapmanki, dunyo tobora tezlasha boshladi. Bunday tezlashuvlarga qanday moslashish kerak? O'n yil oldin bu mavjud emas edi!

Tim: Albatta, hamma ko'proq va ko'proq funksionallikni xohlaydi. Harakat qilishning hojati yo'q, shunchaki ko'proq qoziq. Ba'zan siz foydali narsalarni olib kelish uchun keyingi bosqichma-bosqich yangilanish uchun sekinlashtirishingiz kerak bo'ladi - va bu mutlaqo normaldir.

Yugurish, chopish, chopish kerak degan fikr eng yaxshisi emas. Hech kim o'z hayotini shunday yashashni xohlamasa kerak. Men etkazib berish ritmi loyihaning o'ziga xos ritmini o'rnatishini xohlayman. Agar siz shunchaki kichik, nisbatan ma'nosiz narsalar oqimini ishlab chiqarsangiz, bularning barchasi hech qanday ma'noga ega bo'lmaydi. Mumkin bo'lgan narsalarni iloji boricha tezroq chiqarishga harakat qilishning o'rniga, etakchi ishlab chiquvchilar va mahsulot va loyiha menejerlari bilan strategiyani muhokama qilish kerak. Bu hatto mantiqiymi?

Naqshlar va antipatternlar

Oleg: Siz odatda naqshlar va antipatternlar haqida gapirasiz va bu loyihalarning hayoti va o'limi o'rtasidagi farq. Va endi, devops bizning hayotimizga kirib boradi. Uning loyihani joyida o'ldirishi mumkin bo'lgan o'ziga xos naqshlari va anti-naqshlari bormi?

Tim: Naqshlar va anti-naqshlar har doim sodir bo'ladi. Gapiradigan narsa. Xo'sh, biz "porloq narsalar" deb ataydigan narsa bor. Odamlar haqiqatan ham yangi texnologiyani yaxshi ko'radilar. Ular shunchaki ajoyib va ​​zamonaviy ko'rinadigan hamma narsaning yorqinligidan hayratda qolishadi va ular savol berishni to'xtatadilar: hatto kerakmi? Biz nimaga erishmoqchimiz? Bu narsa ishonchlimi, buning ma'nosi bormi? Men tez-tez odamlarni, ta'bir joiz bo'lsa, texnologiyaning eng yuqori cho'qqisiga ko'raman. Ular dunyoda sodir bo'layotgan voqealar bilan gipnoz qilinadi. Ammo, agar siz ular qanday foydali narsalarni qilishlarini diqqat bilan ko'rib chiqsangiz, ko'pincha foydali narsa yo'q!

Biz o‘rtoqlarimiz bilan bu yil yubiley yili, odamlarning Oyga qo‘nganiga ellik yil to‘lishi haqida gaplashayotgan edik. Bu 1969 yilda edi. Odamlarga u erga borishga yordam bergan texnologiya hatto 1969 yil emas, balki 1960 yoki 62 yil, chunki NASA faqat ishonchliligi haqida yaxshi dalillarga ega bo'lgan narsalarni ishlatmoqchi edi. Va shuning uchun siz unga qaraysiz va tushunasiz - ha, va ular haqiqat edi! Endi, yo'q, yo'q, lekin siz texnologiya bilan bog'liq muammolarga duch kelasiz, chunki hamma narsa juda qattiq suriladi, barcha yoriqlardan sotiladi. Odamlar har tomondan baqirishmoqda: "Mana, bu qanday narsa, bu dunyodagi eng yangi narsa, eng chiroyli narsa, mutlaqo hamma uchun mos!" Xo'sh, bu ... odatda bularning barchasi faqat aldov bo'lib chiqadi, keyin esa hammasini tashlab yuborish kerak. Ehtimol, bularning barchasi men allaqachon keksa odam bo'lganim va odamlar yugurib chiqib, eng yaxshi texnologiyalarni yaratishning yagona, eng to'g'ri yo'lini topdik, deyishganda, bunday narsalarga katta shubha bilan qaraganim uchundir. Shu payt ichimda: “Qanday tartibsizlik!” degan ovoz uyg'onadi.

Maykl: Haqiqatan ham, biz keyingi kumush o'q haqida qanchalik tez-tez eshitganmiz?

Tim: To'g'ri, va bu odatiy jarayon! Misol uchun... bu butun dunyo bo'ylab hazilga aylanganga o'xshaydi, lekin bu erda odamlar ko'pincha blokcheyn texnologiyasi haqida gapirishadi. Va ular aslida ma'lum vaziyatlarda mantiqiy! Agar sizga haqiqatan ham voqealarning ishonchli dalillari kerak bo'lganda, tizim ishlayotgani va hech kim bizni aldamagan bo'lsa, sizda xavfsizlik muammolari va bularning barchasi aralashib ketganda - blokcheyn mantiqiy bo'ladi. Ammo ular Blockchain endi butun dunyo bo'ylab tarqalib, yo'lidagi hamma narsani supurib tashlashini aytishganda? Ko'proq orzu qiling! Bu juda qimmat va murakkab texnologiya. Texnik jihatdan murakkab va vaqt talab qiladi. Sof algoritmik, shu jumladan, har safar matematikani eng kichik o'zgarishlar bilan qayta hisoblashingiz kerak ... va bu ajoyib g'oya - lekin faqat ba'zi holatlar uchun. Mening butun hayotim va faoliyatim shu bilan bog'liq: juda aniq vaziyatlarda qiziqarli g'oyalar. Sizning vaziyatingizni aniq tushunish juda muhimdir.

Maykl: Ha, asosiy "hayot, koinot va hamma narsa" savoli: bu texnologiya yoki yondashuv sizning vaziyatingizga mos keladimi yoki yo'qmi?

Tim: Bu savol allaqachon texnologiya guruhi bilan muhokama qilinishi mumkin. Ehtimol, hatto maslahatchini ham olib keling. Loyihani ko'rib chiqing va tushuning - endi biz avvalgidan ham yaxshiroq, to'g'ri va foydali narsani qilamizmi? Balki mos keladi, balki mos kelmaydi. Ammo eng muhimi, bunday qarorni sukut bo'yicha qabul qilmang, chunki kimdir: "Bizga blokcheyn juda kerak! Men u haqida hozirgina samolyotda jurnalda o‘qidim!” Jiddiymi? Bu hatto kulgili ham emas.

Afsonaviy "devops muhandisi"

Oleg: Endi hamma devoplarni amalga oshirmoqda. Kimdir Internetda devoplar haqida o'qiydi va ertaga ishga qabul qilish saytida boshqa vakansiya paydo bo'ladi. "devops muhandisi". Bu erda men sizning e'tiboringizni qaratmoqchiman: sizningcha, bu "devops engineer" atamasi yashash huquqiga egami? Devops bu madaniyat degan fikr bor va bu erda biror narsa qo'shilmaydi.

Tim: Shunday. Keyin darhol bu atama haqida bir oz tushuntirish berishlariga ruxsat bering. Uni noyob qilish uchun nimadir. Ular bu kabi vakansiya ortida qandaydir noyob qobiliyatlar kombinatsiyasi borligini isbotlamaguncha, men uni sotib olmayman! Aytmoqchimanki, bizda ish unvoni bor, "devops engineer", qiziqarli unvon, ha, keyin nima bo'ladi? Ish unvonlari odatda juda qiziq narsa. Keling, "ishlab chiquvchi" deylik - bu nima? Turli tashkilotlar butunlay boshqacha narsalarni anglatadi. Ba'zi kompaniyalarda yuqori sifatli dasturchilar boshqa kompaniyalarda maxsus professional testerlar tomonidan yozilgan testlardan ko'ra ko'proq ma'noga ega bo'lgan testlarni yozadilar. Xo'sh, ular endi dasturchilarmi yoki sinovchilarmi?

Ha, bizda ish unvonlari bor, lekin agar siz etarlicha uzoq savollar bersangiz, biz hammamiz muammoni hal qiluvchimiz ekanligi ayon bo'ladi. Biz yechim izlovchimiz va ba'zilarida texnik ko'nikmalar mavjud, ba'zilarida esa boshqacha. Agar siz DevOps kirib kelgan muhitda yashasangiz, siz rivojlanish va boshqaruvni integratsiyalash bilan shug'ullanasiz va bu faoliyat juda muhim maqsadga ega. Lekin sizdan aynan nima bilan shug'ullanasiz va nima uchun mas'ulsiz deb so'ralsa, bularning barchasini odamlar azaldan qilgan ekan. "Men arxitektura uchun mas'ulman", "Men ma'lumotlar bazalari uchun javobgarman" va hokazo, nima bo'lishidan qat'iy nazar, ko'ryapsizmi - bularning barchasi "devops" dan oldin edi.

Agar kimdir menga o'z lavozimini aytsa, men unchalik quloq solmayman. Unga aslida nima uchun mas'ul ekanini aytib berishga ruxsat berish yaxshidir, bu bizga masalani yaxshiroq tushunishga imkon beradi. Mening eng sevimli misolim, odam o'zini "loyiha menejeri" deb da'vo qilganida. Nima? Bu hech narsani anglatmaydi, men hali ham nima qilayotganingizni bilmayman. Loyiha menejeri ishlab chiquvchi, to'rt kishilik jamoaning rahbari, kod yozadigan, ishlarni bajaradigan, jamoa etakchisiga aylangan, odamlarning o'zlari etakchi sifatida tan oladigan bo'lishi mumkin. Shuningdek, loyiha menejeri loyihada olti yuz kishini boshqaradigan, boshqa menejerlarni boshqaradigan, jadvallarni tuzish va byudjetlarni rejalashtirish uchun javobgar bo'lgan menejer bo'lishi mumkin, hammasi. Bu ikki butunlay boshqa dunyo! Ammo ularning lavozim nomi bir xil ko'rinadi.

Keling, buni biroz boshqacha aylantiraylik. Haqiqatan ham siz nimada yaxshisiz, katta tajribaga egasiz, iste'dodingiz bormi? Nima uchun mas'uliyatni o'z zimmangizga olasiz, chunki bu vazifani bajara olaman deb o'ylaysizmi? Va bu erda kimdir darhol rad eta boshlaydi: yo'q, yo'q, yo'q, menda umuman loyiha resurslari bilan shug'ullanish istagi yo'q, bu mening ishim emas, men texnik do'stman va men qulaylik va foydalanuvchi interfeyslarini tushunaman, men tushunmayman umuman odamlar qo'shinlarini boshqarishni xohlayman, menga ishlashga ruxsat bering.

Aytgancha, men bunday ko'nikmalarni ajratish yaxshi ishlaydigan yondashuvning katta tarafdoriman. Texniklar o'z martabalarini xohlagancha oshirishlari mumkin bo'lgan joyda. Biroq, men hali ham texnik xodimlar shikoyat qiladigan tashkilotlarni ko'raman: men loyiha boshqaruviga kirishim kerak, chunki bu kompaniyada yagona yo'l. Ba'zida bu dahshatli oqibatlarga olib keladi. Eng yaxshi texniklar umuman yaxshi menejer emas va eng yaxshi menejerlar texnologiyani boshqara olmaydi. Keling, bu haqda halol bo'laylik.

Hozir men bunga talab katta. Agar siz texnik bo'lsangiz, sizning kompaniyangiz sizga yordam berishi mumkin, ammo nima bo'lishidan qat'iy nazar, siz haqiqatan ham o'zingizning martaba yo'lingizni topishingiz kerak, chunki texnologiya o'zgarib turadi va siz u bilan birga o'zingizni qayta kashf qilishingiz kerak! Faqat yigirma yil ichida texnologiyalar kamida besh marta o'zgarishi mumkin. Texnologiya g'alati narsa ...

"Hamma narsa bo'yicha mutaxassislar"

Maykl: Odamlar texnologiya o'zgarishining bunday tezligiga qanday dosh bera oladi? Ularning murakkabligi o'sib bormoqda, ularning soni ortib bormoqda, odamlar o'rtasidagi muloqotning umumiy miqdori ham o'sib bormoqda va siz "hamma narsada mutaxassis" bo'lolmaysiz.

Tim: To'g'ri! Agar siz texnologiya sohasida ishlasangiz, ha, siz aniq bir narsani tanlashingiz va uni o'rganishingiz kerak. Tashkilotingiz foydali deb topadigan ba'zi texnologiyalar (va ehtimol haqiqatda foydali bo'lishi mumkin). Va agar siz endi unga qiziqmasangiz - men buni aytishimga hech qachon ishonmagan bo'lardim - ehtimol siz texnologiya qiziqroq yoki o'rganish uchun qulayroq bo'lgan boshqa tashkilotga o'tishingiz kerak.

Ammo umuman olganda, ha, siz haqsiz. Texnologiyalar bir vaqtning o'zida barcha yo'nalishlarda o'sib bormoqda; Boshqa tomondan, texnologik bilimlarni tom ma'noda o'zlashtiradigan va bu haqda aqldan ozgan shimgich odamlar bor. Men bir nechta bunday odamlarni ko'rdim, ular tom ma'noda nafas olishadi va yashashadi, ular bilan suhbatlashish foydali va qiziqarli. Ular nafaqat tashkilot ichida sodir bo'layotgan voqealarni o'rganishadi, balki umuman olganda, ular bu haqda gapirishadi, ular haqiqatan ham ajoyib texnologlar, ular juda ongli va maqsadli. Ular asosiy ishi nima bo'lishidan qat'i nazar, shunchaki to'lqin cho'qqisida qolishga harakat qilishadi, chunki ularning ishtiyoqi Texnologiya harakati, texnologiyani ilgari surishdir. Agar siz to'satdan bunday odam bilan uchrashsangiz, u bilan tushlikka borib, tushlik paytida turli xil salqin narsalarni muhokama qilishingiz kerak. Menimcha, har qanday tashkilotga kamida bir nechta shunday odamlar kerak.

Xatarlar va noaniqlik

Maykl: Faxriy muhandislar, ha. Keling, vaqtimiz bo'lganda risklarni boshqarishga to'xtalib o'tamiz. Biz ushbu suhbatni tibbiy dasturiy ta'minotni muhokama qilishdan boshladik, bu erda xatolar dahshatli oqibatlarga olib kelishi mumkin. Keyin biz Lunar dasturi haqida gaplashdik, bu erda xatolik narxi millionlab dollarni tashkil etadi va ehtimol bir nechta inson hayoti. Ammo hozir men sanoatda teskari harakatni ko'rmoqdaman, odamlar xavflar haqida o'ylamaydilar, ularni bashorat qilishga urinmaydilar, hatto ularni kuzatmaydilar.

Oleg: Tez harakatlaning va narsalarni buzing!

Maykl: Ha, tez harakatlaning, narsalarni sindirib, ko'proq va ko'proq narsalarni, biror narsadan o'lguningizcha. Sizningcha, o'rtacha ishlab chiquvchi xavflarni boshqarishni o'rganishga qanday yondashishi kerak?

Tim: Keling, ikkita narsa o'rtasida chiziq chizamiz: xavf va noaniqlik. Bular har xil narsalar. Noaniqlik, aniq javobga erishish uchun ma'lum bir vaqtning o'zida etarli ma'lumotlarga ega bo'lmaganda yuzaga keladi. Misol uchun, loyihaning eng dastlabki bosqichida kimdir sizdan "ishni qachon tugatasiz" deb so'rasa, agar siz juda halol odam bo'lsangiz, "menda hech qanday tasavvur yo'q" deb javob berasiz. Siz shunchaki bilmaysiz va bu yaxshi. Siz hali muammolarni o'rganmagansiz va jamoa bilan tanish emassiz, ularning mahoratini bilmaysiz va hokazo. Bu noaniqlik.

Potentsial muammolarni allaqachon aniqlash mumkin bo'lganda xavflar paydo bo'ladi. Bunday narsa sodir bo'lishi mumkin, uning ehtimoli noldan kattaroq, lekin yuz foizdan kam, ular orasida. Shu sababli, kechikishlar va keraksiz ishlardan tortib, loyiha uchun halokatli natijaga qadar hamma narsa sodir bo'lishi mumkin. Natija, siz aytsangiz - bolalar, soyabonlarimizni yig'amiz va plyajni tark etamiz, biz buni hech qachon tugatmaymiz, hammasi tugadi, davr. Biz bu narsa ishlaydi deb taxmin qildik, lekin u umuman ishlamaydi, to'xtash vaqti keldi. Bu holatlar.

Ko'pincha, muammolarni ular allaqachon paydo bo'lganida, muammo hozir sodir bo'lganda hal qilish osonroq. Ammo muammo sizning oldingizda bo'lsa, siz xavflarni boshqarish bilan shug'ullanmaysiz - muammoni hal qilish, inqirozni boshqarish bilan shug'ullanasiz. Agar siz etakchi ishlab chiquvchi yoki menejer bo'lsangiz, kechikishlarga, vaqtni behuda sarflashga, keraksiz xarajatlarga yoki butun loyihaning qulashiga olib keladigan nima bo'lishi mumkinligi haqida o'ylayotgan bo'lsangiz kerak? Bizni to'xtatib, qaytadan boshlashga nima majbur qiladi? Bularning barchasi ishlaganda, biz ular bilan nima qilamiz? Ko'pgina vaziyatlar uchun javob beradigan oddiy javob bor: xavflardan qochmang, ular ustida ishlang. Xavfli vaziyatni qanday hal qilishingiz mumkinligini ko'ring, uni hech narsaga kamaytiring, muammodan boshqa narsaga aylantiring. Deyish o'rniga: yaxshi, biz muammolarni yuzaga kelganda hal qilamiz.

Noaniqlik va xavf siz bilan shug'ullanadigan hamma narsada birinchi o'rinda turishi kerak. Siz loyiha rejasini qabul qilishingiz, ba'zi muhim xavflarni oldindan ko'rib chiqishingiz va aytishingiz mumkin: biz hozir bu bilan shug'ullanishimiz kerak, chunki agar bularning biri noto'g'ri bo'lsa, boshqa hech narsa muhim bo'lmaydi. Stol ustidagi dasturxonning go'zalligi haqida qayg'urmasligingiz kerak, agar siz kechki ovqat pishirishingiz mumkinligi aniq bo'lmasa. Avval siz mazali kechki ovqat tayyorlashning barcha xavf-xatarlarini aniqlab olishingiz, ular bilan shug'ullanishingiz kerak va shundan keyingina haqiqiy xavf tug'dirmaydigan barcha boshqa narsalar haqida o'ylashingiz kerak.

Shunga qaramay, sizning loyihangizni nima noyob qiladi? Keling, loyihamiz relsdan chiqib ketishiga nima sabab bo'lishi mumkinligini ko'rib chiqaylik. Bu sodir bo'lish ehtimolini kamaytirish uchun nima qilishimiz mumkin? Odatda siz ularni 100% zararsizlantira olmaysiz va vijdoningiz bilan: "Bo'ldi, bu endi muammo emas, xavf hal qilindi!" Men uchun bu kattalar xatti-harakatining belgisidir. Bu bola va kattalar o'rtasidagi farq - bolalar o'zlarini o'lmas deb o'ylashadi, hech narsa yomon bo'lmaydi, hammasi yaxshi bo'ladi! Shu bilan birga, kattalar uch yoshli bolalarning o'yin maydonchasiga qanday sakrashini, ko'zlari bilan harakatlarini kuzatib, o'zlariga: "ooh-ooh, ooh-ooh" deyishlarini kuzatadilar. Men yaqin atrofda turib, bola yiqilib tushganda ushlashga tayyorlanaman.

Boshqa tomondan, bu biznesni juda yoqtirishimning sababi, bu xavfli. Biz ishlarni qilamiz va bular xavfli. Ular kattalarning yondashuvini talab qiladi. Faqat g'ayrat bilan muammolaringizni hal qilmaydi!

Kattalar uchun muhandislik fikrlash

Maykl: Bolalar bilan o'rnak yaxshi. Agar men oddiy muhandis bo'lsam, bolaligimdan mamnunman. Ammo qanday qilib ko'proq kattalar fikriga o'tish mumkin?

Tim: Yangi boshlovchi yoki ishlab chiquvchi bilan bir xilda yaxshi ishlaydigan g'oyalardan biri bu kontekst tushunchasi. Biz nima qilyapmiz, nimaga erishmoqchimiz. Ushbu loyihada nima muhim? Ushbu loyihada kimligingiz muhim emas, siz stajyor yoki bosh arxitektor bo'lasizmi, hamma uchun kontekst kerak. Biz har kimni o'z ishidan ko'ra kengroq miqyosda fikr yuritishga majburlashimiz kerak. "Men o'z asarimni yarataman va mening asarim ishlayotgan ekan, men baxtliman." Yo'q va yana yo'q. Odamlarga ular ishlayotgan kontekstni eslatib turish har doim arziydi (qo'pollik qilmasdan!). Hammamiz birgalikda erishmoqchi bo'lgan narsamiz. Loyihangizda hamma narsa yaxshi bo'lsa, bola bo'lishingiz mumkin bo'lgan g'oyalar - iltimos, bunday qilmang. Agar biz marra chizig'ini umuman kesib o'tsak, uni faqat birga kesib o'tamiz. Siz yolg'iz emassiz, biz hammamiz birgamiz. Agar loyihadagi barcha odamlar, xoh keksa, ham yosh, loyiha uchun aynan nima muhimligi, kompaniya nima uchun barchamiz erishmoqchi bo'lgan narsaga pul sarflayotgani haqida gapira boshlasa... ularning ko'pchiligi o'zlarini ancha yaxshi his qilishadi, chunki ular ularning ishi boshqalarning ishi bilan qanday bog'liqligini ko'rasiz. Bir tomondan, men shaxsan javobgar bo'lgan asarni tushunaman. Ammo ishni tugatish uchun bizga boshqa barcha odamlar kerak. Va agar siz haqiqatan ham tugatdim deb o'ylasangiz, loyihada har doim qiladigan ishimiz bor!

Oleg: Nisbatan gapiradigan bo'lsak, agar siz Kanbanga ko'ra ishlasangiz, ba'zi sinovlardan o'tganingizda, u erda qilayotgan ishingizdan voz kechishingiz mumkin (masalan, dasturlash) va testerlarga yordam berishingiz mumkin.

Tim: Aynan. Menimcha, eng yaxshi texniklar, agar ularga diqqat bilan qarasangiz, ular o'zlarining menejerlari. Buni qanday shakllantirishim mumkin ...

Oleg: Sizning hayotingiz o'zingiz boshqaradigan loyihangizdir.

Tim: Aynan! Aytmoqchimanki, siz mas'uliyatni o'z zimmangizga olasiz, masalani tushunasiz va sizning qarorlaringiz ularning ishiga ta'sir qilishi mumkinligini ko'rganingizda odamlar bilan aloqa qilasiz, shunga o'xshash narsalar. Bu shunchaki stolda o‘tirish, o‘z ishing bilan shug‘ullanish va hatto atrofingda nimalar bo‘layotganini sezmaslik ham emas. Yo'q yo'q. Aytgancha, Agile-ning eng yaxshi jihatlaridan biri shundaki, ular qisqa sprintlarni taklif qilishdi, chunki bu tarzda barcha ishtirokchilarning holati aniq kuzatiladi, ular hammasini birgalikda ko'rishlari mumkin. Biz har kuni bir-birimiz haqida gaplashamiz.

Xatarlarni boshqarishga qanday kirish mumkin

Oleg: Bu sohada biron bir rasmiy bilim tuzilmasi mavjudmi? Misol uchun, men Java dasturchisiman va ta'lim bo'yicha haqiqiy loyiha menejeri bo'lmasdan risklarni boshqarishni tushunishni xohlayman. Ehtimol, avval Makkonnelning "Dasturiy ta'minot loyihasi qancha turadi" kitobini o'qib chiqaman, keyin nima? Birinchi qadamlar qanday?

Tim: Birinchisi, loyihadagi odamlar bilan muloqot qilishni boshlashdir. Bu hamkasblar bilan muloqot qilish madaniyatini zudlik bilan yaxshilashni ta'minlaydi. Biz hamma narsani yashirish o'rniga sukut bo'yicha ochishdan boshlashimiz kerak. Ayt: mana shular meni bezovta qiladi, kechalari meni uyqudan qo'ymaydi, bugun kechasi uyg'ondim va shunday bo'ldim: Xudoyim, bu haqda o'ylashim kerak! Boshqalar ham xuddi shunday narsani ko'radimi? Guruh sifatida biz ushbu mumkin bo'lgan muammolarga javob berishimiz kerakmi? Siz ushbu mavzular bo'yicha muhokamani qo'llab-quvvatlashingiz kerak. Biz ishlaydigan oldindan tayyorlangan formula yo'q. Gamburger tayyorlashda emas, hamma narsa odamlarda. "Chizburger yasadim, chizburgerni soting" - umuman bizniki emas va shuning uchun men bu ishni juda yaxshi ko'raman. Menejerlar qilgan hamma narsa hozir jamoa mulkiga aylangani menga yoqadi.

Oleg: Siz kitoblarda va intervyularda odamlar grafikdagi raqamlardan ko'ra baxtga ko'proq qayg'urishlari haqida gapirgansiz. Boshqa tomondan, siz jamoaga aytsangiz: biz devoplarga o'tmoqdamiz va endi dasturchi doimiy ravishda muloqot qilishi kerak, bu uning konfor zonasidan ancha uzoqda bo'lishi mumkin. Va hozir u, aytaylik, chuqur baxtsiz bo'lishi mumkin. Bunday vaziyatda nima qilish kerak?

Tim: Men nima qilishni aniq bilmayman. Agar ishlab chiquvchi juda yakkalanib qolgan bo'lsa, ular birinchi navbatda ish nima uchun qilinayotganini tushunmaydilar, ular faqat ishning o'z qismiga qarashadi va ular men "kontekst" deb ataydigan narsaga kirishlari kerak. U hamma narsa bir-biriga qanday bog'langanligini aniqlashi kerak. Va, albatta, men rasmiy taqdimotlar yoki shunga o'xshash narsalarni nazarda tutmayman. Men hamkasblar bilan ishning faqat siz mas'ul bo'lgan qismi haqida emas, balki butun ish haqida gaplashishingiz kerakligi haqida gapiryapman. Bu erda siz g'oyalarni muhokama qilishni, ishingizni bir-biriga moslashtirish uchun umumiy kelishuvlarni va umumiy muammoni birgalikda qanday hal qilishni boshlashingiz mumkin.

Ularga moslashishga yordam berish uchun ular ko'pincha texniklarni treningga yuborishni xohlashadi va ular mashg'ulotlarni muhokama qilishadi. Mening bir do'stim itlar uchun mashq qilishini aytishni yaxshi ko'radi. Odamlar uchun trening mavjud. Dasturchi sifatida o'rganishning eng yaxshi jihatlaridan biri bu tengdoshlaringiz bilan muloqot qilishdir. Agar kimdir biror narsada chindan ham yaxshi bo'lsa, siz uning ishini kuzatishingiz yoki u bilan ishi yoki biror narsa haqida gaplashishingiz kerak. Ba'zi an'anaviy Kent Bek doimiy ravishda ekstremal dasturlash haqida gapirardi. Bu juda kulgili, chunki XP juda oddiy g'oya, lekin u juda ko'p muammolarni keltirib chiqaradi. Ba'zilar uchun XP bilan ishlash do'stlar oldida yalang'och yechinishga majbur bo'lishga o'xshaydi. Ular mening nima qilayotganimni ko'rishadi! Ular mening hamkasblarim, ular nafaqat ko'rishadi, balki tushunishadi! Qo'rqinchli! Ba'zi odamlar jiddiy asabiylasha boshlaydi. Ammo bu o'rganishning yakuniy yo'li ekanligini tushunganingizda, hamma narsa o'zgaradi. Siz odamlar bilan yaqindan ishlaysiz va ba'zi odamlar mavzuni sizdan ko'ra yaxshiroq tushunishadi.

Maykl: Ammo bularning barchasi sizni konfor zonasidan chiqishga majbur qiladi. Muhandis sifatida siz o'zingizning konfor zonangizdan chiqib, muloqot qilishingiz kerak. Muammoni hal qiluvchi sifatida siz doimo o'zingizni zaif holatga qo'yishingiz va nima noto'g'ri bo'lishi mumkinligi haqida o'ylashingiz kerak. Ushbu turdagi ish tabiatan bezovtalanish uchun mo'ljallangan. Siz ongli ravishda o'zingizni stressli vaziyatlarga qo'yasiz. Odatda odamlar ulardan qochishadi, odamlar baxtli bolalar bo'lishni yaxshi ko'radilar.

Tim: Nima qilish mumkin, siz chiqib, ochiq aytishingiz mumkin: “Hammasi joyida, men buni uddalay olaman! Men o'zimni noqulay his qilayotgan yagona odam emasman. Keling, bir jamoa bo'lib, turli xil noqulay narsalarni muhokama qilaylik! ” Bu bizning umumiy muammolarimiz, biz ular bilan shug'ullanishimiz kerak, bilasizmi? Menimcha, o'ziga xos daho ishlab chiquvchilar mamontlarga o'xshaydi, ular g'oyib bo'ldi. Va ularning ahamiyati juda cheklangan. Agar siz muloqot qila olmasangiz, yaxshi ishtirok eta olmaysiz. Shuning uchun, shunchaki gapiring. Halol va ochiq bo'ling. Bu kimgadir yoqimsiz bo'lganidan juda afsusdaman. Tasavvur qila olasizmi, ko'p yillar oldin Amerika Qo'shma Shtatlarida asosiy qo'rquv o'lim emas, bir tadqiqot bor edi, lekin taxmin qiling nima? Omma oldida nutq so'zlashdan qo'rqing! Bu shuni anglatadiki, bir joyda baland ovozda iltifot aytishdan ko'ra o'lishni afzal ko'radigan odamlar bor. Va o'ylaymanki, siz nima qilayotganingizga qarab, ba'zi bir asosiy ko'nikmalarga ega bo'lishingiz kifoya. Nutq qobiliyatlari, yozish ko'nikmalari - lekin sizning ishingizda haqiqatan ham kerak bo'lganda. Agar siz tahlilchi bo'lib ishlasangiz-u, lekin o'qish, yozish va gapira olmasangiz, unda, afsuski, mening loyihalarimda hech qanday aloqangiz bo'lmaydi!

Aloqa narxi

Oleg: Bunday ketgan xodimlarni ishga olish turli sabablarga ko‘ra qimmatroq emasmi? Axir ular ishlash o'rniga doimiy ravishda suhbatlashishadi!

Tim: Men hammani emas, balki jamoaning asosiy qismini nazarda tutgandim. Agar sizda ma'lumotlar bazalarini sozlashni yaxshi biladigan, ma'lumotlar bazalarini sozlashni yaxshi ko'radigan va umrining oxirigacha ma'lumotlar bazalaringizni sozlashni davom ettirmoqchi bo'lgan odam bo'lsa, yaxshi, davom eting. Lekin men loyihaning o'zida yashashni xohlaydigan odamlar haqida gapiryapman. Loyihani ishlab chiqishga qaratilgan jamoaning asosiy qismi. Bu odamlar haqiqatan ham doimiy ravishda bir-birlari bilan muloqot qilishlari kerak. Va ayniqsa, loyihaning boshida, siz xavflarni, global maqsadlarga erishish yo'llarini va shunga o'xshash narsalarni muhokama qilganingizda.

Maykl: Bu mutaxassisligi, malakasi yoki ish usullaridan qat'i nazar, loyihada ishtirok etayotgan har bir kishiga tegishli. Barchangiz loyihaning muvaffaqiyati bilan qiziqasiz.

Tim: Ha, siz o'zingizni loyihaga etarlicha sho'ng'ib ketganingizni, sizning vazifangiz loyihani amalga oshirishga yordam berish ekanligini his qilasiz. Siz dasturchi, tahlilchi, interfeys dizayneri bo'lasizmi, har kim. Men har kuni ertalab ishga kelaman va biz shunday qilamiz. Biz bu odamlarning barchasi uchun, ularning mahoratidan qat'i nazar, javobgarmiz. Bu kattalar bilan suhbatlashadigan odamlar guruhi.

Oleg: Darhaqiqat, suhbatdosh xodimlar haqida gapirganda, men odamlarning, ayniqsa, devoplarga o'tishni so'ragan menejerlarning dunyoga nisbatan yangi qarashlariga e'tirozlarini taqlid qilishga harakat qildim. Va siz, maslahatchilar sifatida, ushbu e'tirozlarni ishlab chiquvchi sifatida mendan ko'ra yaxshiroq bilishingiz kerak! Menejerlarni nima ko'proq tashvishga solayotgani bilan o'rtoqlashing?

Tim: Menejerlar? Hm. Ko'pincha menejerlar muammolar tufayli bosim ostida bo'lishadi, zudlik bilan biror narsani bo'shatish va etkazib berish va shunga o'xshash narsalarga duch kelishadi. Ular bizni doimiy ravishda qandaydir muhokama va bahslashayotganimizni kuzatib turishadi va ular buni shunday ko'rishadi: suhbatlar, suhbatlar, suhbatlar ... Yana qanday suhbatlar? Ishga qayting! Chunki gapirish ularga ishdek tuyulmaydi. Siz kod yozmaysiz, dasturiy ta'minotni sinab ko'rmaysiz, hech narsa qilmayotganga o'xshaysiz - nega sizni biror narsa qilishga yubormaysiz? Axir, etkazib berish allaqachon bir oyda!

Maykl: Biroz kod yozing!

Tim: Menimcha, ular ish haqida emas, balki taraqqiyotning ko'rinmasligi haqida qayg'urishmoqda. Muvaffaqiyatga yaqinlashayotgandek tuyulishi uchun ular klaviaturadagi tugmalarni bosayotganimizni ko‘rishlari kerak. Ertalabdan kechgacha butun kun. Bu birinchi raqamli muammo.

Oleg: Misha, siz nimadir haqida o'ylayapsiz.

Maykl: Kechirasiz, men o'yga adashib qoldim va eslab qoldim. Bularning barchasi menga kecha bo'lib o'tgan qiziqarli mitingni eslatdi... Kecha juda ko'p mitinglar bo'ldi... Va bularning barchasi juda tanish tuyuladi!

Ish haqisiz hayot

Tim: Aytgancha, muloqot qilish uchun "mitinglar" tashkil qilish shart emas. Aytmoqchimanki, ishlab chiquvchilar o'rtasidagi eng foydali munozaralar ular bir-birlari bilan gaplashganda sodir bo'ladi. Siz ertalab bir chashka qahva bilan kirasiz va u erda besh kishi yig'ilib, texnik narsalarni qizg'in muhokama qilmoqda. Men uchun, agar men ushbu loyihaning menejeri bo'lsam, shunchaki tabassum va biznesim bo'yicha biror joyga borganim ma'qul, ular buni muhokama qilishlariga ruxsat bering. Ular imkon qadar allaqachon ishtirok etishgan. Bu yaxshi belgi.

Oleg: Aytgancha, sizning kitobingizda nima yaxshi va nima yomonligi haqida ko'plab eslatmalar mavjud. Siz ulardan birortasini o'zingiz ishlatasizmi? Nisbatan gapiradigan bo'lsak, endi sizning kompaniyangiz bor va u juda noan'anaviy tarzda tuzilgan ...

Tim: Noodatiy, ammo bu qurilma bizga juda mos keladi. Biz bir-birimizni anchadan beri bilamiz. Biz bir-birimizga ishonamiz, sherik bo'lishdan oldin bir-birimizga juda ishonardik. Va masalan, bizda umuman maosh yo'q. Biz shunchaki ishlaymiz va masalan, men mijozlarimdan pul topgan bo'lsam, unda barcha pullar menga o'tdi. Shundan so'ng biz tashkilotga a'zolik badallarini to'laymiz va bu kompaniyaning o'zini ta'minlash uchun etarli. Bundan tashqari, barchamiz turli xil narsalarga ixtisoslashganmiz. Misol uchun, men buxgalterlar bilan ishlayman, soliq deklaratsiyasini to'ldiraman, kompaniya uchun har xil ma'muriy ishlarni qilaman va buning uchun menga hech kim pul to'lamaydi. Jeyms va Tom bizning veb-saytimizda ishlaydi va ularga hech kim to'lamaydi. To'lovlaringizni to'lasangiz, hech kim sizga nima qilish kerakligini aytishni o'ylamaydi. Misol uchun, Tom endi avvalgidan ko'ra kamroq ishlaydi. Endi u gildiya uchun emas, balki boshqa manfaatlarga ega. Ammo u to'lovlarini to'lar ekan, hech kim uning oldiga kelib: "Hoy, Tom, ishga bor!" Sizning orangizda pul bo'lmasa, hamkasblar bilan muomala qilish juda oson. Va endi bizning munosabatlarimiz turli mutaxassisliklar bo'yicha asosiy g'oyalardan biridir. U ishlaydi va u juda yaxshi ishlaydi.

Eng yaxshi maslahat

Maykl: "Eng yaxshi maslahat" ga qaytsangiz, mijozlaringizga qayta-qayta aytadigan biror narsa bormi? 80/20 haqida fikr bor va ba'zi maslahatlar, ehtimol, tez-tez takrorlanadi.

Tim: Bir paytlar “Ayiqlar bilan vals” kabi kitob yozsangiz, tarix rivojini o‘zgartirib yuboradi va odamlar to‘xtab qoladi, deb o‘ylagandim, lekin... Eh, qarang, kompaniyalar ko‘pincha ularda hamma narsa yaxshi, deb ko‘rsatishadi. Yomon narsa sodir bo'lishi bilanoq, bu ular uchun zarba va ajablantiradi. "Mana, biz tizimni sinab ko'rdik va u hech qanday tizim sinovlaridan o'tmaydi va bu yana uch oylik rejadan tashqari ish, bu qanday sodir bo'lishi mumkin? Kim bilardi? Nima xato bo'lishi mumkin? Jiddiy, bunga ishonasizmi?

Men hozirgi vaziyatdan juda g'azablanmaslik kerakligini tushuntirishga harakat qilaman. Biz buni muhokama qilishimiz, nima noto'g'ri bo'lishi mumkinligini va kelajakda bunday narsalarning qanday oldini olish kerakligini tushunishimiz kerak. Agar muammo paydo bo'lsa, biz u bilan qanday kurashamiz, uni qanday ushlab turamiz?

Menga bularning barchasi qo'rqinchli ko'rinadi. Odamlar murakkab, zerikarli muammolar bilan shug'ullanishadi va agar ular faqat barmoqlarini kesib, eng yaxshisiga umid qilsalar, "eng yaxshi" haqiqatda sodir bo'ladi, deb o'ylashda davom etadilar. Yo‘q, bunday ishlamaydi.

Xatarlarni boshqarishni mashq qiling!

Maykl: Sizningcha, qancha tashkilot risklarni boshqarish bilan shug'ullanadi?

Tim: Meni g'azablantirgan narsa shundaki, odamlar shunchaki xavf-xatarlarni yozib qo'yishadi, natijada paydo bo'lgan ro'yxatga qarang va ishga kirishadi. Aslida, ular uchun xavflarni aniqlash - bu risklarni boshqarish. Lekin men uchun bu so'rashga sababdek tuyuladi: yaxshi, ro'yxat bor, aniq nimani o'zgartirasiz? Ushbu xavflarni hisobga olgan holda standart harakatlar ketma-ketligini o'zgartirishingiz kerak. Agar ishning eng qiyin qismi bo'lsa, siz uni engishingiz kerak va shundan keyingina oddiyroq narsaga o'ting. Birinchi sprintlarda murakkab muammolarni hal qilishni boshlang. Bu allaqachon risklarni boshqarish kabi ko'rinadi. Ammo, odatda, odamlar xavflar ro'yxatini tuzgandan keyin nima o'zgarganligini ayta olmaydi.

Maykl: Va shunga qaramay, ushbu kompaniyalarning qanchasi risklarni boshqarish bilan shug'ullanadi, besh foiz?

Tim: Afsuski, men buni aytishni yomon ko'raman, lekin bu juda ahamiyatsiz qism. Ammo beshdan ortiq, chunki haqiqatan ham katta loyihalar mavjud va ular hech bo'lmaganda biror narsa qilmasa, mavjud bo'lolmaydi. Aytaylik, agar u kamida 25% bo'lsa, men juda hayron bo'laman. Kichik loyihalar odatda bunday savollarga shunday javob beradi: agar muammo bizga ta'sir qilsa, biz uni hal qilamiz. Keyin ular muammoga duch kelishadi va muammolarni boshqarish va inqirozni boshqarish bilan shug'ullanishadi. Muammoni hal qilmoqchi bo'lsangiz va muammo hal etilmasa, inqirozni boshqarishga xush kelibsiz.

Ha, men tez-tez eshitaman: "Biz muammolar paydo bo'lganda hal qilamiz". Albatta qilamizmi? Biz haqiqatan ham qaror qilamizmi?

Oleg: Siz buni sodda va oddiygina loyiha nizomiga muhim invariantlarni yozishingiz mumkin va agar invariantlar buzilgan bo'lsa, shunchaki loyihani qayta ishga tushiring. Bu juda zerikarli bo'lib chiqadi.

Maykl: Ha, men bilan shunday bo'ldiki, xavf-xatarlar paydo bo'lganda, loyiha shunchaki qayta ta'riflangan. Yaxshi, bingo, muammo hal qilindi, endi tashvishlanmang!

Tim: Qayta tiklash tugmasini bosamiz! Yo‘q, bunday ishlamaydi.

DevOops 2019 da asosiy nutq

Maykl: Biz ushbu intervyuning so'nggi savoliga keldik. Siz keyingi DevOops-ga asosiy ma'ruza bilan kelyapsiz, aytmoqchi bo'lgan narsalaringizning sir pardasini ko'tara olasizmi?

Tim: Hozirda ulardan olti nafari mehnat madaniyati, tashkilotlarning aytilmagan qoidalari haqida kitob yozmoqda. Madaniyat tashkilotning asosiy qadriyatlari bilan belgilanadi. Odatda odamlar buni sezmaydilar, lekin ko'p yillar davomida konsalting sohasida ishlaganimiz uchun biz buni payqashga o'rganib qolganmiz. Siz kompaniyaga kirasiz va bir necha daqiqadan so'ng siz nima bo'layotganini his qila boshlaysiz. Biz buni "lazzat" deb ataymiz. Ba'zida bu hid juda yaxshi, ba'zida esa, ey, ey. Turli tashkilotlar uchun narsalar juda boshqacha.

Maykl: Men ham yillar davomida konsalting sohasida ishlayman va nima haqida gapirayotganingizni yaxshi tushunaman.

Tim: Darhaqiqat, asosiy nutqda gapirishga arziydigan narsalardan biri shundaki, hamma narsa kompaniya tomonidan belgilanmaydi. Siz va jamoangiz jamoa sifatida o'z jamoaviy madaniyatingizga ega. Bu butun kompaniya yoki alohida bo'lim, alohida jamoa bo'lishi mumkin. Ammo siz aytishingizdan oldin, biz nimaga ishonamiz, mana bu muhim... Muayyan harakatlar ortidagi qadriyatlar va e'tiqodlar tushunilmaguncha madaniyatni o'zgartirib bo'lmaydi. Xulq-atvorni kuzatish oson, ammo e'tiqodlarni izlash qiyin. DevOps - bu narsalar qanchalik murakkablashib borayotganining ajoyib namunasidir. O'zaro ta'sirlar yanada murakkablashib bormoqda, ular toza yoki umuman ravshan bo'lib qolmaydi, shuning uchun siz nimaga ishonasiz va atrofingizdagi hamma jim bo'lgan narsalar haqida o'ylashingiz kerak.

Tez natijalarga erishmoqchi bo'lsangiz, mana siz uchun yaxshi mavzu: hech kim "bilmayman" demaydigan kompaniyalarni ko'rganmisiz? Shunday joylar borki, siz odamni biror narsani bilmasligini tan olmaguncha qiynoqqa solasiz. Hamma hamma narsani biladi, hamma aql bovar qilmaydigan bilimdon. Siz har qanday odamga murojaat qilasiz va u darhol savolga javob berishi kerak. "Bilmayman" deyish o'rniga. Voy, ular bir guruh bilimdonlarni yollashdi! Va ba'zi madaniyatlarda "men bilmayman" deyish juda xavflidir, bu zaiflik belgisi sifatida qabul qilinishi mumkin. Aksincha, hamma "bilmayman" deyishi mumkin bo'lgan tashkilotlar ham bor. U erda bu mutlaqo qonuniydir va agar kimdir savolga javoban axlat qila boshlasa, javob berish mutlaqo normaldir: "Siz nima haqida gapirayotganingizni bilmaysiz, shunday emasmi?" va hammasini hazilga aylantiring.

Ideal holda, siz doimo baxtli bo'ladigan ishingiz bo'lishni xohlaysiz. Bu oson bo'lmaydi, har kuni quyoshli va yoqimli emas, ba'zida siz qattiq ishlashingiz kerak bo'ladi, lekin siz hisob-kitob qilishni boshlaganingizda, shunday bo'ladi: voy, bu juda ajoyib joy, men bu erda ishlashni yaxshi his qilaman, ham hissiy, ham intellektual. Va shunday kompaniyalar borki, siz maslahatchi sifatida borib, uch oy davomida bunga dosh berolmaysiz va dahshat ichida qochib ketishingizni darhol tushunasiz. Hisobotda men bu haqda gapirmoqchiman.

Tim Lister asosiy nutq bilan keladi "Xarakterlar, jamiyat va madaniyat: farovonlikning muhim omillari"2019-yil 29-30-oktabr kunlari Sankt-Peterburgda bo‘lib o‘tadigan DevOops 2019 konferensiyasiga. Siz chiptalarni sotib olishingiz mumkin rasmiy saytida. Sizni DevOops-da kutamiz!

Manba: www.habr.com

a Izoh qo'shish