"Биз бири-бирибизге ишенебиз. Мисалы, бизде такыр айлык жок” – Peopleware журналынын автору Тим Листер менен узун маек

"Биз бири-бирибизге ишенебиз. Мисалы, бизде такыр айлык жок” – Peopleware журналынын автору Тим Листер менен узун маек

Тим Листер - китептердин авторлошу

  • "Адамдык фактор. Ийгиликтүү долбоорлор жана командалар» (оригиналдуу китеп «Элдик программа» деп аталат)
  • "Аюулар менен вальс: Программалык камсыздоо долбоорлорунда тобокелдиктерди башкаруу"
  • «Адреналин жинди жана үлгүлөр менен зомбиленген. Долбоордук командалардын жүрүм-турумунун үлгүлөрү»

Бул китептердин баары өз тармагындагы классиктер жана кесиптештери менен бирге жазылган Atlantic Systems Guild. Россияда, анын кесиптештери абдан белгилүү - Том ДеМарко и Петр Хрущка, ал да көптөгөн атактуу чыгармаларды жазган.

Тим 40-жылы программалык камсыздоону иштеп чыгууда 1975 жылдык тажрыйбага ээ (бул хабрапостту жазгандардын бири да быйыл төрөлгөн эмес), Тим буга чейин Yourdon Inc компаниясынын аткаруучу вице-президенти болгон. Ал азыр убактысын кеңешүүгө, окутууга жана жазууга жумшап, анда-санда келип турат отчеттор менен дүйнө жүзү боюнча конференциялар.

Биз Хабр үчүн Тим Листер менен маек курдук. Ал DevOops 2019 конференциясын ачат жана бизде китептер жана башка көптөгөн суроолор бар. Интервьюну конференциянын программалык комитетинен Михаил Дружинин менен Олег Чирухин өткөрүшөт.

Майкл: Азыр эмне кылып жатканыңыз тууралуу бир нече сөз айта аласызбы?

Тим: Мен Атлантикалык системалар гильдиясынын башчысымын. Гильдияда алты кишибиз, өзүбүздү директор дейбиз. Үчөө АКШда жана үчөө Европада - ошондуктан Гильдия Атлантика деп аталат. Экөөбүз ушунча жыл чогуу жүрдүк, аларды санап бүтө албайсың. Ар бирибиздин адистиктерибиз бар. Мен акыркы он же андан көп жылдар бою кардарлар менен иштеп келе жатам. Менин долбоорлорума башкаруу гана эмес, талаптарды коюу, долбоорду пландаштыруу жана баалоо кирет. Начар башталган долбоорлор көбүнчө жаман бүтөт окшойт. Ошондуктан, бардык иш-аракеттер чындап эле жакшы ойлонулган жана координацияланган, жаратуучулардын идеялары айкалышкан болушу керек. Эмне кылып жатканыңызды жана эмне үчүн кылып жатканыңызды ойлонушуңуз керек. Долбоорду аягына чыгаруу үчүн кандай стратегияларды колдонуу керек.

Мен көп жылдар бою кардарларга ар кандай жолдор менен кеңеш берип келем. Кызыктуу мисал тизе жана жамбаш хирургиясы үчүн роботторду жасаган компания болуп саналат. Хирург толугу менен өз алдынча операция жасабайт, бирок роботту колдонот. Бул жерде, ачык айтканда, коопсуздук маанилүү. Бирок көйгөйлөрдү чечүүгө багытталган адамдар менен талаптарды талкуулоого аракет кылганыңызда... Кызык угулат, бирок АКШда кутунун (Федералдык Дары-дармек Администрациясы), бул роботтор сыяктуу өнүмдөрдү лицензиялайт. Бир нерсени сатып, аны тирүү адамдарга колдонуудан мурун, лицензия алуу керек. Шарттардын бири - талаптарыңызды көрсөтүү, кандай тесттер бар, аларды кантип сынап көрдүңүз, тесттин жыйынтыгы кандай. Эгер талаптарды өзгөртсөңүз, анда сиз бул чоң сыноо процессинен кайра-кайра өтүшүңүз керек. Биздин кардарлар өздөрүнүн талаптарына тиркемелердин визуалдык дизайнын киргизүүгө жетишти. Алар талаптардын бир бөлүгү катары түздөн-түз скриншоттору бар болчу. Биз аларды сууруп чыгып, бул программалардын көпчүлүгү тизе жана жамбаш жөнүндө эч нерсе билишпейт, мунун баары камера менен ж.б. Биз талаптардын документтерин кайра жазышыбыз керек, алар эч качан өзгөрбөшү үчүн, эгерде кээ бир маанилүү негизги шарттар өзгөрбөсө. Эгерде визуалдык дизайн талаптарга жооп бербесе, продуктту жаңыртуу бир топ тезирээк болот. Биздин жумуш – тизе, жамбаш, белдеги операцияларга тиешелүү элементтерди таап, аларды өзүнчө документтерге чыгарып, негизги талаптар ушул болот деп айтуу. Келгиле, тизе операциялары жөнүндө обочолонгон талаптар тобун жасайлы. Бул бизге туруктуу талаптардын комплексин түзүүгө мүмкүндүк берет. Биз конкреттүү роботтор жөнүндө эмес, бүт продукт линиясы жөнүндө сүйлөшөбүз.

Көп иштер жасалды, бирок алар дагы эле мурда эч кандай маанисиз жана муктаждыгы жок эле жумаларды жана айларды кайталап сыноолорду өткөргөн жерлерге жетишти, анткени алардын кагазда сүрөттөлгөн талаптары системалар курулган реалдуу талаптарга дал келген эмес. FDA аларга ар бир жолу айтты: сиздин талаптарыңыз өзгөрдү, эми бардыгын нөлдөн баштап текшеришиңиз керек. Бүткүл продукцияны толук кайра текшерүү ишкананы өлтүрүп жатты.

Ошентип, сиз кызыктуу нерсенин эң башында турганыңызда ушундай сонун тапшырмалар болот жана эң биринчи аракеттер оюндун кийинки эрежелерин белгилейт. Эгер сиз бул алгачкы иш-аракет башкаруучулук жана техникалык көз караштан жакшы иштей баштаганына ынансаңыз, анда сонун долбоор менен аякташыңыз мүмкүн. Бирок бул бөлүк рельстен чыгып, бир жерден туура эмес болуп кетсе, эгер сиз фундаменталдуу макулдашууларды таба албасаңыз... жок, бул сиздин долбоор сөзсүз түрдө ишке ашпай калат дегендик эмес. Бирок сиз мындан ары: "Биз эң сонун кылдык, бардыгын чындап натыйжалуу кылдык" деп айта албайсыз. Бул кардарлар менен баарлашууда мен кылам.

Майкл: Башкача айтканда, сиз долбоорлорду ишке киргизип, кандайдыр бир тепкичтерди жасап, рельстердин туура багытта баратканын текшерип жатасызбы?

Тим: Бизде табышмактын бардык бөлүктөрүн кантип бириктирүү боюнча идеяларыбыз бар: бизге кандай көндүмдөр керек, алар так качан керек, команданын өзөгү кандай болот жана башка ушул сыяктуу негизги нерселер. Бизге толук убакыттагы кызматкерлер керекпи же кимдир бирөөнү толук эмес жумуш күнү менен жалдай алабызбы? Пландоо, башкаруу. Суроолор: Бул конкреттүү долбоор үчүн эң маанилүүсү эмне? Буга кантип жетишсе болот? Бул продукт же долбоор жөнүндө эмнени билебиз, кандай коркунучтар бар жана белгисиз нерселер кайда, мунун баары менен кантип күрөшөбүз? Албетте, ушул маалда кимдир-бирөө "Агилгечи?!" Макул, баарыңар ийкемдүүсүңөр, бирок эмне болот? Долбоор так кандай көрүнөт, аны кантип долбоорго ылайыктуу кылып чыгарасың? Сиз жөн гана "биздин мамилебиз эч нерсеге созулат, биз Scrum командасыбыз!" деп айта албайсыз. Бул куру сөз жана куру сөз. Андан ары кайда барасың, эмне үчүн иштеши керек, мааниси кайда? Мен кардарларымды ушул суроолордун бардыгын ойлонууга үйрөтөм.

19 жыл шамдагай

Майкл: Agileде адамдар көп учурда эч нерсени алдын ала аныктабаганга аракет кылышат, бирок мүмкүн болушунча кечирээк чечим кабыл алуу үчүн: биз өтө чоңбуз, мен жалпы архитектура жөнүндө ойлонбойм дешет. Мен анын ордуна бир топ башка нерселерди ойлобойм, мен азыр кардарга иштей турган нерсени жеткирем;

Тим: Менимче, шамдагай методологиялардан баштап Agile Манифести 2001-жылы өнөр жайдын көзүн ачкан. Бирок, экинчи жагынан, эч нерсе идеалдуу эмес. Мен бардыгын итеративдик өнүктүрүү үчүнмын. Итерация көпчүлүк долбоорлордо көп мааниге ээ. Бирок сиз ойлонушуңуз керек болгон суроо: продукт чыгып, колдонууда болгондон кийин, ал канча убакытка созулат? Бул башка нерсе менен алмаштырылганга чейин алты айга жете турган продуктпу? Же бул көп жылдар бою иштей турган продуктпу? Албетте, аттарын атабайм, бирок... Нью-Йоркто жана анын каржы коомчулугунда эң фундаменталдуу системалар абдан эски. Бул укмуш. Сиз аларды карап, ойлойсуз, 1994-жылга артка кайтып, иштеп чыгуучуларга: “Мен келечектен, 2019-жылдан келдим. Бул системаны керектүү убакытка чейин иштеп чыгуу. Аны кеңейтүү, архитектура жөнүндө ойлонуу. Андан кийин жыйырма беш жылдан ашык убакытка өркүндөтүлөт. Эгерде сиз өнүгүүнү дагы бир аз кечиктирсеңиз, анда эч ким байкабай калат!” Узак мөөнөткө нерселерди баалаганыңызда, анын жалпы баасы канча болорун эске алышыңыз керек. Кээде жакшы иштелип чыккан архитектура чындап эле татыктуу, ал эми кээде андай эмес. Айланабызга көз чаптырып, өзүбүзгө суроо беришибиз керек: биз ушундай чечим кабыл алуу үчүн туура абалдабызбы?

Ошентип, "Биз шамдагайлык үчүн, кардар өзү эмне алгысы келгенин айтып берет" деген сыяктуу идея - бул өтө жөнөкөй. Кардарлар эмнени каалаарын билишпейт, андан да көп алар эмне ала аларын билишпейт. Кээ бирөөлөр аргумент катары тарыхый мисалдарды келтире башташат, мен буга чейин эле көрдүм. Бирок техникалык жактан өнүккөн адамдар муну адатта айтышпайт. Алар: "Бул 2019-жыл, бул бизде мүмкүнчүлүктөр жана биз бул нерселерге болгон көз карашыбызды толугу менен өзгөртө алабыз!" Колдонуудагы чечимдерди туурап, аларды бир аз сулуураак жана тарак кылуунун ордуна, кээде сыртка чыгып: "Келгиле, бул жерде эмне кылууну ойлоп жатканыбызды толугу менен кайра ойлоп табалы!"

Ал эми кардарлардын көбү бул маселе жөнүндө ойлоно албайт деп ойлойм. Алар колунда бар нерсени гана көрүшөт, болгону ушуну менен. Андан кийин алар "келгиле, муну бир аз жөнөкөйлөтүп коёлу" деген сыяктуу өтүнүчтөр менен келишет же алар адатта эмнени айтышса. Бирок биз официант же официант эмеспиз, ошон үчүн канчалык келесоо болуп чыкса да заказ алып, анан ашканада бышырып алабыз. Биз алардын жол көрсөтүүчүлөрүбүз. Биз алардын көзүн ачып: эй, бул жерде бизде жаңы мүмкүнчүлүктөр бар! Биз сиздин бизнесиңиздин бул бөлүгүн жасоо ыкмасын чындап өзгөртө аларыбызды түшүндүңүзбү? Agile менен болгон көйгөйлөрдүн бири - бул мүмкүнчүлүк деген эмне, көйгөй деген эмне, биз эмне кылышыбыз керек, бул конкреттүү кырдаалга кандай жеткиликтүү технологиялар эң ылайыктуу экенин түшүнүүнү жок кылат.

Мүмкүн, мен бул жерде өтө эле шектенип жаткандырмын: ийкемдүү коомдо көптөгөн сонун нерселер болуп жатат. Бирок менде бир көйгөй бар, эл бир долбоорду аныктоонун ордуна колун ыргыта баштайт. Мен бул жерден сурайт элем - биз эмне кылып жатабыз, кантип жасайбыз? Жана кандайдыр бир сыйкырдуу түрдө кардар баарынан жакшыраак билиши керек экен. Ал эми кардар кимдир бирөө тарабынан курулган нерселердин ичинен тандаганда гана жакшы билет. Эгерде мен машина алгым келсе жана үй-бүлөлүк бюджетимдин көлөмүн билсем, анда мен өзүмдүн жашоо образыма ылайыктуу машинаны тез эле тандайм. Бул жерде мен баарын башкалардан жакшы билем! Бирок кимдир бирөө унааларды жасап койгонун эске алыңыз. Мен жаңы машинаны кантип ойлоп табуу керектигин билбейм, мен адис эмесмин. Биз салт же кандайдыр бир өзгөчө өнүмдөрдү түзүп жатканда, кардардын үнү эске алынышы керек, бирок бул жалгыз үн эмес.

Олег: Сиз Agile Манифестти айтып өттүңүз. Биз кандайдыр бир жол менен маселенин заманбап түшүнүгүн эске алуу менен аны жаңыртышыбыз керекпи?

Тим: Мен ага тийбейт элем. Бул чоң тарыхый документ деп ойлойм. Айтайын дегеним, ал кандай болсо. Жашы 19га чыкты, карыды, бирок убагында революция жасаган. Анын жакшы кылганы – реакция жаратып, эл ал жөнүндө шыбырашты. Сиз, балким, 2001-жылы бул тармакта иштей элексиз, бирок анда баары процесстерге жараша иштешчү. Программалык камсыздоо инженерия институту, программалык камсыздоонун толуктугу моделинин беш деңгээли (CMMI). Мындай терең байыркы уламыштар сизге бир нерсе айтып береби, билбейм, бирок андан кийин бул ачылыш болду. Эл башында процесстер туура жолго коюлса, көйгөйлөр өзүнөн-өзү жоюлат деп ишенишкен. Анан Манифест келип, мындай дейт: "Жок, жок, жок - биз процесстерге эмес, адамдарга негизделебиз". Биз программалык камсыздоону иштеп чыгуунун устатыбыз. Биз идеалдуу процесс закым экенин түшүнөбүз. Долбоорлордо өтө эле өзгөчөлүк бар, бардык долбоорлор үчүн бирдиктүү идеалдуу процесс идеясы эч кандай мааниге ээ эмес. Бардык нерсенин бир гана чечими бар деп айтуу үчүн көйгөйлөр өтө татаал (салам, нирвана).

Мен келечекке карайм деп ойлобойм, бирок азыр адамдар долбоорлор жөнүндө көбүрөөк ойлоно башташты деп айтам. Менимче, Agile Манифести секирип, “Эй! Сиз кемедесиз, бул кемени өзүңүз айдап барасыз. Сиз чечим кабыл алышыңыз керек болот - биз бардык жагдайлар үчүн универсалдуу рецепт сунуш кылбайбыз. Сиз кеменин экипажысыз, эгер сиз жетиштүү болсоңуз, максатыңызга жол таба аласыз. Сенден мурун дагы башка кемелер болгон, сенден кийин дагы башка кемелер болот, бирок баары бир, кандайдыр бир мааниде сиздин саякатыңыз кайталангыс». Ушундай бир нерсе! Бул ой жүгүртүү ыкмасы. Мен үчүн күн астында эч кандай жаңы нерсе жок, адамдар мурда сүзүп келишкен жана дагы сүзүшөт, бирок сен үчүн бул сенин негизги сапарың, мен сага так эмне болорун айтпай эле коёюн. Сизде командада координацияланган иштөө көндүмдөрү болушу керек, эгер сизде алар чындап эле бар болсо, баары ойдогудай болуп, каалаган жериңизге жетесиз.

Peopleware: 30 жылдан кийин

Олег: Peopleware Манифест сыяктуу эле революция болгонбу?

Тим: Элдик буюмдар... Бул китепти Том экөөбүз жазганбыз, бирок мындай болот деп ойлогон эмеспиз. Негедир бир топ адамдардын ой-пикири менен резонанс жаратты. Бул биринчи китепте мындай деп айтылган: программалык камсыздоону иштеп чыгуу – бул адам көп талап кылган иш. Биздин техникалык табиятыбызга карабастан, биз чоң, атүгүл эбегейсиз, өтө татаал нерсени куруп жаткан адамдардын жамаатыбыз. Мындай нерселерди жалгыз эч ким жарата албайт, туурабы? Ошентип, "команда" идеясы абдан маанилүү болуп калды. Жана башкаруу көз карашынан гана эмес, ошондой эле белгисиз бир топ татаал терең маселелерди чечүү үчүн чогулган техникалык адамдар үчүн. Жеке мен үчүн бул менин карьерамдагы интеллекттин чоң сыноосу болду. Жана бул жерде сиз мындай деп айта алышыңыз керек: ооба, бул көйгөй мен өз алдынча чече албагандан да көп, бирок биз чогуу сыймыктана турган кооз чечимди таба алабыз. Анан эң көп резонанс жараткан ушул идея болду деп ойлойм. Биз убакыттын бир бөлүгүн өз алдынча, бир бөлүгүн топтун бир бөлүгү катары иштейбиз жана көбүнчө чечимди топ кабыл алат деген ой. Топтук маселелерди чечүү тез эле татаал долбоорлордун маанилүү өзгөчөлүгү болуп калды.

Тим көп сандаган баяндамаларды жасаганына карабастан, алардын өтө азы YouTube сайтында жайгаштырылат. Сиз 2007-жылдагы “Элдик буюмдардын кайтып келиши” отчетун карасаңыз болот. Сапаты, албетте, көп нерсени талап кылат.

Майкл: Китеп жарык көргөндөн бери акыркы 30 жылда бир нерсе өзгөрдүбү?

Тим: Муну ар кандай бурчтардан карасаңыз болот. Социологиялык жактан айтсак... бир жолу, жөнөкөй убакта, сиз жана сиздин командаңыз бир кабинетте отургансыз. Күн сайын жакын болуп, чогуу кофе ичип, жумушту талкуулашыңыз мүмкүн. Чынында эле өзгөргөн нерсе, командалар азыр географиялык жактан, ар кайсы өлкөлөрдө жана убакыт алкактарында бөлүштүрүлүшү мүмкүн, бирок дагы эле алар бир эле көйгөйдүн үстүндө иштеп жатышат жана бул татаалдыктын жаңы катмарын кошот. Бул эски мектептегидей угулушу мүмкүн, бирок баардыгыңар чогуу болуп, чогуу иштеп, кесиптешиңердин жанына басып келип: “Карачы, мен эмнени таптым, сага бул кандай жагат? Бетме-бет сүйлөшүү формалдуу эмес баарлашууга өтүүнүн тез жолун камсыздайт жана менимче, бул шамдагай энтузиасттарга да жагат. Мен дагы кооптонуп жатам, анткени чындыгында дүйнө абдан кичинекей болуп чыкты, азыр анын баары бөлүштүрүлгөн командалар менен камтылган жана баары абдан татаал.

Баарыбыз DevOpsто жашайбыз

Майкл: Ал тургай, конференциянын программалык комитетинин көз карашы боюнча, бизде Калифорнияда, Нью-Йоркто, Европада, Орусияда адамдар бар... Сингапурда азырынча эч ким жок. Географиянын айырмасы абдан чоң жана адамдар андан да көп тарай баштады. Эгерде биз өнүгүү жөнүндө сөз кыла турган болсок, анда devops жана командалар ортосундагы тоскоолдуктарды бузуу жөнүндө көбүрөөк айтып бере аласызбы? Ар ким өз бункеринде отурат, эми бункерлер урап жатат деген түшүнүк бар, бул окшоштукка кандай карайсыз?

Тим: Менин оюмча, акыркы технологиялык жетишкендиктерди эске алганда, devops чоң мааниге ээ. Мурда сизде иштеп чыгуучулардын жана администраторлордун командалары бар болчу, алар иштешти, иштешти, иштешти жана кайсы бир убакта администраторлорго келип, аны өндүрүшкө чыгара турган нерсе пайда болду. Бул жерде бункер жөнүндө сөз башталды, анткени администраторлор душман эмес, жок дегенде союздаштар, бирок сиз алар менен баардыгы өндүрүшкө даяр болгондо гана сүйлөштүңүз. Сиз аларга бир нерсе менен барып: Караңызчы, бизде кандай тиркеме бар, бирок бул тиркемени чыгара аласызбы? Ал эми азыр жеткирүүнүн бүт түшүнүгү жакшы жагына өзгөрдү. Дегеним, өзгөрүүлөрдү тез арада түртүп алсаңыз болот деген идея бар болчу. Биз өнүмдөрдү тез арада жаңырта алабыз. Ноутбугумдагы Firefox ачылып, "эй, биз сиздин Firefoxуңузду фондо жаңыртып койдук, жана бир мүнөтүңүз болгондо, бул жерди бассаңыз, биз сизге эң акыркы релизди беребиз" дегенде, мен ар дайым жылмайам. Ошондо мен: "Ооба, балам!" Мен уктап жатканда, алар менин компьютеримде жаңы релизди жеткирүүнүн үстүндө иштеп жатышты. Бул укмуш, укмуш.

Бирок бул жерде кыйынчылык: сизде программаны жаңылоо менен бул өзгөчөлүк бар, бирок адамдарды интеграциялоо алда канча кыйын. Мен DevOops'тун негизги баяндамасында айткым келген нерсе, азыр бизде мурда болуп көрбөгөндөй көп оюнчулар бар. Эгер сиз жөн гана бир командага катышкан ар бир адам жөнүндө ойлонсоңуз .... Сиз аны бир команда катары ойлодуңуз жана бул жөн гана программисттер командасы эмес. Бул тестерлер, долбоордун менеджерлери жана башка бир топ адамдар. Жана ар бир адамдын дүйнөгө болгон өз көз карашы бар. Продукт менеджерлери долбоордун менеджерлеринен таптакыр айырмаланат. Админдердин өз милдеттери бар. Эмне болуп жатканынан кабардар болуп, жинди болуп калбоо үчүн бардык катышуучуларды координациялоо бир топ кыйын маселе болуп калат. Топтун милдеттерин жана бардыгына тиешелүү болгон милдеттерди бөлүү керек. Бул абдан татаал иш. Башка жагынан алып караганда, мен мунун баары көп жылдар мурункуга караганда алда канча жакшы деп ойлойм. Дал ушул жолдо адамдар өсүп, өзүн туура алып жүрүүгө үйрөнүшөт. Интеграцияны жасаганда, акыркы учурда программалык камсыздоо кутудагы домкраттай сойлоп кетпеши үчүн жер астындагы өнүгүү болбошу керектигин түшүнөсүз: бул жерде биз эмне кылганыбызды караңыз! Идея сиз интеграцияны жана өнүгүүнү жасай аласыз, акырында сиз тыкан жана кайталануучу жол менен чыгасыз. Мунун баары мен үчүн чоң мааниге ээ. Бул системанын колдонуучулары жана кардарыңыз үчүн көбүрөөк баалуулуктарды түзүүгө мүмкүндүк берет.

Майкл: Devops бүт идеясы мүмкүн болушунча эртерээк маанилүү окуяларды жеткирүү болуп саналат. Мен дүйнө барган сайын ылдамдай баштаганын көрүп турам. Мындай ылдамдатууларга кантип көнүү керек? Он жыл мурун мындай болгон эмес!

Тим: Албетте, ар бир адам көбүрөөк жана көбүрөөк функцияларды каалайт. Кыймылдын кереги жок, жөн гана үйүп коюңуз. Кээде пайдалуу нерсени алып келүү үчүн кийинки кошумча жаңыртуу үчүн да жайлатууга туура келет - бул нормалдуу көрүнүш.

Чуркап, чуркап, чуркаш керек деген идея эң жакшы эмес. Кимдир бирөө өз жашоосун ушинтип жашагысы келери күмөн. Мен жеткирүүлөрдүн ритминин долбоордун өз ритмин орнотуусун каалайм. Эгер сиз жөн гана кичинекей, салыштырмалуу маанисиз нерселердин агымын чыгарсаңыз, анда мунун баары эч кандай мааниге ээ болбойт. Бир нерсени мүмкүн болушунча эртерээк чыгарууга аракет кылуунун ордуна, башкы иштеп чыгуучулар, продукт жана долбоордун менеджерлери менен талкуулоонун мааниси стратегия. Мунун мааниси барбы?

Үлгүлөр жана антипаттерндер

Олег: Сиз адатта үлгүлөр жана антипаттерндер жөнүндө сөз кыласыз жана бул долбоорлордун жашоосу менен өлүмүнүн ортосундагы айырма. Ал эми азыр, биздин жашообузга devops кирип жатат. Долбоорду жеринде өлтүрө турган өзүнүн үлгүлөрү жана анти-үлгүлөрү барбы?

Тим: Үлгүлөр жана анти-үлгүлөр ар дайым болуп турат. Сүйлөшө турган нерсе. Ооба, биз "жылтырак нерселер" деп атаган нерсе бар. Адамдар чындап эле жаңы технологияны жакшы көрүшөт. Алар жөн гана салкын жана стилдүү көрүнгөн бардык нерселердин жаркыраганына таң калышат жана суроолорду бербей калышат: бул керекпи? Биз эмнеге жетишебиз? Бул нерсе ишенимдүүбү, анын мааниси барбы? Технологиянын эң алдыңкы чегинде, мындайча айтканда, адамдарды көп көрөм. Алар дүйнөдө болуп жаткан нерселерди гипноздошот. Бирок, эгер сиз алардын кандай пайдалуу иштерин кылдаттык менен карап чыксаңыз, көбүнчө эч кандай пайдалуу нерсе жок!

Биз жолдошторубуз менен быйыл юбилейлик жыл, адамдардын Айга конгонуна элуу жыл болду деп эле талкуулап жатканбыз. Бул 1969-жылы болгон. Адамдарга ал жакка барууга жардам берген технология 1969-жылдын технологиясы эмес, тескерисинче 1960 же 62-жыл, анткени NASA ишенимдүүлүктүн жакшы далилдери болгон нерселерди гана колдонгусу келген. Ошентип, сен аны карап түшүнөсүң - ооба, жана алар чын эле! Азыр, жок, жок, бирок сиз технология менен көйгөйлөргө туш болосуз, анткени баары өтө катуу түртүлүп, бардык жаракалардан сатылган. Адамдар ар жерден кыйкырып жатышат: «Мына, бул эмне деген нерсе, бул дүйнөдөгү эң жаңы нерсе, эң сонун нерсе, бардыгына ылайыктуу!» Мейли, мына ушундай... адатта мунун баары жөн гана алдамчы болуп чыгат, анан мунун баарын ыргытуу керек. Балким, мунун баары мен карыгандыктан жана мындай нерселерге чоң ишенбөөчүлүк менен караганым үчүн, эл түгөнүп, эң мыкты технологияларды түзүүнүн жалгыз, эң туура жолун таптым деп айтканда. Ушул учурда ичимден: «Кандай баш аламандык!» деген үн ойгонот.

Майкл: Чынында эле, биз кийинки күмүш ок жөнүндө канча жолу укканбыз?

Тим: Так жана бул кадимки көрүнүш! Мисалы... бул дүйнө жүзү боюнча тамашага айланган окшойт, бирок бул жерде адамдар блокчейн технологиясы жөнүндө көп айтышат. Жана алар, чынында, кээ бир жагдайларда мааниси бар! Сизге чындап эле окуялардын, системанын иштеп жаткандыгынын жана бизди эч ким алдабаганынын ишенимдүү далили керек болгондо, сизде коопсуздук көйгөйлөрү жана ушулардын баары аралашып кеткенде - blockchain акылга сыярлык болот. Бирок алар Blockchain азыр дүйнө жүзүн шыпырып, жолунда бардыгын шыпырып салат деп айтышканда? Көбүрөөк кыялдан! Бул абдан кымбат жана татаал технология. Техникалык жактан татаал жана убакытты талап кылат. Анын ичинде таза алгоритмдик, ар бир жолу сиз математиканы кичине өзгөртүүлөр менен кайра эсептеп чыгышыңыз керек... жана бул сонун идея - бирок айрым учурларда гана. Менин бүт өмүрүм жана карьерам ушул жөнүндө болду: абдан конкреттүү кырдаалдарда кызыктуу идеялар. Сиздин кырдаалды так түшүнүү абдан маанилүү.

Майкл: Ооба, негизги "жашоо, аалам жана бардык суроо": бул технология же ыкма сиздин абалыңызга ылайыктуубу же жокпу?

Тим: Бул суроону технологиялык топ менен талкуулоого болот. Балким, ал тургай, кандайдыр бир консультант алып келет. Долбоорду карап көрүңүз жана түшүнүңүз - эми биз мурункуга караганда жакшыраак жана туура жана пайдалуу иш кылабызбы? Балким туура келет, балким туура келбейт. Бирок эң негизгиси, мындай чечимди демейки боюнча кабыл албаңыз, анткени кимдир бирөө: “Бизге блокчейн абдан керек! Мен ал жөнүндө жаңы эле учакта журналдан окудум!” Олуттуубу? Бул күлкүлүү деле эмес.

Мифтик "девопс инженери"

Олег: Азыр баары devops ишке ашырууда. Кимдир бирөө интернеттен devops жөнүндө окуйт, ал эми эртең жумушка орношуу сайтында дагы бир вакансия пайда болот. "девопс инженер". Бул жерден мен сиздердин көңүлүңүздөрдү бургум келет: сиздин оюңузча, бул “девоп инженери” деген терминдин жашоого укугу барбы? Девопс - бул маданият деген пикир бар жана бул жерде бир нерсе кошулбайт.

Тим: Эптеп-септеп. Алар бул терминге дароо түшүндүрмө беришсин. Аны уникалдуу кылуу үчүн бир нерсе. Алар ушундай вакансиянын артында кандайдыр бир уникалдуу жөндөм айкалышы бар экенин далилдемейинче, мен аны сатып албайм! Айтайын дегеним, бизде жумуштун наамы бар, "девопс инженер" деген кызыктуу наам бар, ооба, андан ары эмне болот? Жумуш наамдары көбүнчө абдан кызыктуу нерсе. Келгиле, "иштеп чыгуучу" дейли - баары бир бул эмне? Ар кандай уюмдар такыр башка нерселерди билдирет. Кээ бир компанияларда жогорку сапаттагы программисттер башка компаниялардагы атайын профессионалдуу тестерлер жазган тесттерге караганда мааниге ээ болгон тесттерди жазышат. Эми алар программисттерби же тестерлерби?

Ооба, бизде кызматтык наамдар бар, бирок сиз суроолорду узакка созсоңуз, акырында биз бардыгыбыз көйгөйдү чечүүчүбүз. Биз чечим издөөчүлөрбүз, кээ бирлеринде техникалык көндүмдөр бар, ал эми кээ бирлеринде ар кандай. Эгер сиз DevOps кирген чөйрөдө жашасаңыз, сиз иштеп чыгууну жана башкарууну интеграциялоо менен алектенесиз жана бул иш-чаранын кандайдыр бир маанилүү максаты бар. Бирок сизден так эмне менен алектенесиз, эмнеге жооп бересиз деп сурашса, мунун баарын адамдар эзелтеден бери жасап келишкен экен. "Мен архитектура үчүн жооп берем", "Мен маалымат базалары үчүн жооп берем" жана башкалар, эмнеси болсо да, мунун баары "девоптардан" мурун болгон.

Кимдир бирөө мага жумушунун наамын айтса, мен көп укпайм. Ал чындыгында эмне үчүн жооптуу экенин айтып бергени жакшы, бул бизге маселени жакшыраак түшүнүүгө мүмкүндүк берет. Менин сүйүктүү мисалы, адам өзүн "долбоордун менеджери" деп ырастаганда. Эмне? Бул эч нерсе дегенди билдирбейт, мен дагы деле билбейм эмне кыласың. Долбоордун менеджери иштеп чыгуучу, төрт адамдан турган команданын лидери, код жазып, ишти аткарып жаткан, команданын лидери болуп калган, эл өзү лидер катары тааныган адам боло алат. Ошондой эле, долбоордун менеджери долбоор боюнча алты жүз адамды башкарган, башка менеджерлерди башкарган, графиктерди түзүүгө жана бюджетти пландаштырууга жооптуу менеджер боло алат. Бул эки башка дүйнө! Бирок алардын ишинин аталышы бирдей угулат.

Муну бир аз башкача буралы. Сиз эмнени жакшы билесиз, тажрыйбаңыз көп, талантыңыз барбы? Сиз эмне үчүн жоопкерчилик тартасыз, анткени сиз бул ишти аткара алам деп ойлойсуз? Бул жерде кимдир бирөө дароо танып баштайт: жок, жок, жок, мен долбоордун ресурстары менен иштөөнү каалабайм, бул менин бизнесим эмес, мен техникалык досмун жана колдонууга ыңгайлуулукту жана колдонуучу интерфейстерин түшүнөм, мен түшүнбөйм. дегеле элдин армиясын башкаргым келет, мага жумушка барайын.

Айтмакчы, мен мындай ыкманын чоң жактоочусумун, анда көндүмдөрдүн мындай бөлүнүшү жакшы иштейт. Техникалар карьерасын каалагандай өстүрө турган жерде. Бирок, мен дагы эле техникалык адистер нааразы болгон уюмдарды көрүп турам: мен долбоорду башкарууга киришим керек, анткени бул компанияда жалгыз жол. Кээде бул коркунучтуу натыйжаларга алып келет. Мыкты техниктер такыр эле жакшы менеджерлер эмес, ал эми мыкты менеджерлер технологияны башкара албайт. Бул тууралуу чынчыл бололу.

Мен азыр буга суроо-талап көп экенин көрүп турам. Эгер сиз техник болсоңуз, анда сиздин компанияңыз сизге жардам бере алат, бирок ага карабастан, сиз чындап эле өзүңүздүн карьераңызды табышыңыз керек, анткени технология өзгөрүп турат жана сиз аны менен бирге өзүңүздү кайра ойлоп табышыңыз керек! Жыйырма жылдын ичинде технологиялар жок дегенде беш жолу өзгөрүшү мүмкүн. Технология кызык нерсе...

"Баары боюнча эксперттер"

Майкл: Адамдар технологиянын мындай ылдамдыгын кантип көтөрө алышат? Алардын татаалдыгы өсүүдө, алардын саны өсүүдө, адамдардын ортосундагы баарлашуунун жалпы көлөмү да өсүп жатат жана сиз «бардык нерседе эксперт» боло албайсыз.

Тим: Туура! Эгер сиз технологияда иштесеңиз, ооба, сиз сөзсүз конкреттүү нерсени тандап, ага тереңдеп киришиңиз керек. Уюмуңуз пайдалуу деп эсептеген кээ бир технология (жана балким чындыгында пайдалуу болот). Эгер сиз мындан ары ага кызыкпасаңыз - мен муну айтам деп эч качан ишенген эмесмин - балким, сиз технология кызыктуураак же окууга ыңгайлуу болгон башка уюмга көчүп барышыңыз керек.

Бирок жалпысынан алганда, ооба, сиз туура. Технологиялар бир эле учурда бардык багыттар боюнча өсүп жатат, эч ким "мен бар болгон бардык технологиялар боюнча эксперт технологмун" деп айта албайт. Башка жагынан алганда, технологиялык билимди түзмө-түз өзүнө сиңирип алган жана ага жинди болгон губка адамдар бар. Мен мындай адамдарды бир нече көрдүм, алар түзмө-түз дем алып, аны менен жашайт, алар менен сүйлөшүү пайдалуу жана кызыктуу. Алар уюмдун ичинде эмне болуп жатканын гана изилдебестен, жалпысынан бул жөнүндө сүйлөшүшөт, алар дагы чындап эле сонун технологдор, алар абдан аң-сезимдүү жана максаттуу. Алар жөн гана негизги жумушу кандай болгонуна карабастан, толкундун туу чокусунда калууга аракет кылышат, анткени алардын кумарлары – Технологиянын кыймылы, технологияны алга жылдыруу. Эгер сиз күтүлбөгөн жерден ушундай адамга жолугуп калсаңыз, аны менен түшкү тамакка барып, түшкү тамакта ар кандай сонун нерселерди талкуулашыңыз керек. Менимче, кандай гана уюм болбосун мындай адамдар жок дегенде бир-экиден болушу керек.

Тобокелдиктер жана белгисиздик

Майкл: Ардактуу инженерлер, ооба. Убакыт болгондо тобокелчиликти башкарууга токтололу. Биз бул маекти медициналык программалык камсыздоону талкуулоодон баштадык, анда каталар оор кесепеттерге алып келиши мүмкүн. Андан кийин биз Ай программасы жөнүндө сүйлөштүк, анда катанын баасы миллиондогон долларларды, жана балким, бир нече адамдын өмүрүн алып келет. Бирок азыр мен тармакта тескери кыймылды көрүп турам, адамдар тобокелчиликтер жөнүндө ойлонушпайт, аларды алдын ала айтууга аракет кылышпайт, жада калса байкашпайт.

Олег: Тез кыймылдап, нерселерди сындырыңыз!

Майкл: Ооба, бир нерседен өлүп калмайынча, тез кыймылдаңыз, нерселерди бузуп, көбүрөөк нерселерди. Сиздин көз карашыңыз боюнча, орточо иштеп чыгуучу тобокелдиктерди башкарууну үйрөнүүгө азыр кандай мамиле кылышы керек?

Тим: Келгиле, бул жерде эки нерсенин ортосуна чек коёлу: тобокелдиктер жана белгисиздик. Булар башка нерселер. Белгисиздик так жоопко жетүү үчүн убакыттын кайсы бир жеринде жетиштүү маалыматыңыз жок болгондо пайда болот. Мисалы, долбоордун эң алгачкы этабында кимдир бирөө сизден "ишти качан бүтүрөсүз" деп сураса, эгер сиз чынчыл адам болсоңуз, "менде эч кандай түшүнүк жок" деп жооп бересиз. Сиз жөн гана билбейсиз, жана бул жакшы. Сиз көйгөйлөрдү изилдей элексиз жана команда менен тааныш эмессиз, алардын чеберчилигин билбейсиз жана башкалар. Бул белгисиздик.

Тобокелдиктер мүмкүн болгон көйгөйлөрдү аныктоого мүмкүн болгондо пайда болот. Мындай нерсе болушу мүмкүн, анын ыктымалдыгы нөлдөн жогору, бирок жүз пайыздан аз, ортодо. Ушундан улам, кечигүүдөн жана керексиз жумуштан баштап, долбоор үчүн өлүмгө дуушар болгон натыйжага чейин бардыгы болушу мүмкүн. Жыйынтык, силер айткандай - балдар, кол чатырларыбызды бүктөп, жээктен кетели, биз муну эч качан бүтүрбөйбүз, баары бүттү, мезгил. Биз бул нерсе иштейт деп ойлогонбуз, бирок ал такыр иштебейт, токтоп калууга убакыт келди. Бул жагдайлар.

Көбүнчө көйгөйлөр жаралып калганда, көйгөй азыр болуп жаткан учурда оңой чечилет. Бирок көйгөй сиздин алдыңызда турганда, сиз тобокелдиктерди башкаруу менен алектенбейсиз — көйгөйдү чечүү, кризисти башкаруу. Эгерде сиз жетектөөчү иштеп чыгуучу же менеджер болсоңуз, анда эмне болушу мүмкүн деп ойлонуп жатсаңыз керек, бул кечигүүгө, убакытты текке кетирүүгө, ашыкча чыгымдарга же бүтүндөй долбоордун кыйрашына алып келет? Эмне бизди токтотуп, кайра баштоого мажбурлайт? Булардын баары иштегенде, биз аларды эмне кылабыз? Көпчүлүк жагдайлар үчүн жарактуу жөнөкөй жооп бар: тобокелдиктерден качпаңыз, алардын үстүнөн иштеңиз. Коркунучтуу кырдаалды кантип чечип, аны жок кылып, көйгөйдөн башка нерсеге айландыра ала турганыңызды көрүңүз. Анда эмесе: жакшы, биз көйгөйлөр пайда болгондо чечебиз.

Белгисиздик жана тобокелдик сиз менен алектенген бардык нерсенин башында болушу керек. Сиз долбоордун планын алып, белгилүү бир олуттуу тобокелдиктерди алдын ала карап чыгып, мындай деп айта аласыз: биз муну менен азыр күрөшүшүбүз керек, анткени мунун бири туура эмес болуп калса, башка эч нерсе маанилүү эмес. Кечки тамакты даярдай алабы же жокпу, түшүнүксүз болсо, дасторкондун кооздугу жөнүндө кабатыр болбоңуз. Адегенде даамдуу кечки тамакты даярдоонун бардык тобокелдиктерин аныктап, алар менен күрөшүп, андан кийин гана реалдуу коркунуч туудурбаган бардык башка нерселер жөнүндө ойлонуу керек.

Дагы бир жолу айта кетейин, сиздин долбоордун өзгөчөлүгү эмнеде? Келгиле, биздин долбоор рельстен чыгып кетишине эмне себеп болорун карап көрөлү. Бул окуянын ыктымалдыгын азайтуу үчүн эмне кылсак болот? Адатта, сиз аларды 100% нейтралдаштырууга жана таза абийир менен: "Болду, бул эми көйгөй эмес, тобокелчилик чечилди!" Мен үчүн бул чоңдордун жүрүм-турумунун белгиси. Бала менен чоңдун айырмасы мына ушунда - балдар өлбөс, эч нерсеси жаман болбойт, баары жакшы болот деп ойлошот! Ошол эле учурда чоңдор үч жашар балдардын оюн аянтчасында кандай секирип жатканын көрүп, көздөрү менен кыймылдарды ээрчип, өздөрүнө: "оох-оох, оо-оох" дешет. Мен жакын жерде туруп, бала жыгылганда кармоого даярмын.

Экинчи жагынан, бул бизнести абдан жактырганымдын себеби - бул тобокелчилик. Биз нерселерди жасайбыз жана бул нерселер кооптуу. Алар чоңдордун мамилесин талап кылат. Жалгыз энтузиазм сиздин көйгөйлөрүңүздү чечпейт!

Чоңдор үчүн инженердик ой жүгүртүү

Майкл: Балдар менен болгон үлгүсү жакшы. Катардагы инженер болсом, бала экениме ыраазымын. Бирок сиз кантип чоңойгон ой жүгүртүүгө өтөсүз?

Тим: Баштоочу же белгиленген иштеп чыгуучу менен бирдей жакшы иштеген идеялардын бири - контекст түшүнүгү. Биз эмне кылып жатабыз, эмнеге жетишебиз деп жатабыз. Бул долбоордо чынында эмне маанилүү? Бул долбоордо ким экениңиз маанилүү эмес, сиз интерн же башкы архитекторсузбу, бардыгына контекст керек. Биз ар кимдин өз эмгегине караганда кеңири масштабда ойлонушуна жетишишибиз керек. "Мен өз чыгармамды жасайм жана менин чыгармам иштесе, мен бактылуумун." Жок жана дагы жок. Адамдарга алар иштеген контекстти эскертип коюу ар дайым (оройсуз!) баалуу. Баарыбыз биргелешип жетишүүгө аракет кылып жатабыз. Долбооруңуздун бөлүгүндө баары жакшы болсо, бала бойдон кала аласыз деген идеялар - сураныч, андай кылбаңыз. Дегеле мара сызыгын басып өтсөк, аны чогуу гана өтөбүз. Сиз жалгыз эмессиз, биз баарыбыз биргебиз. Долбоордогу бардык адамдар, жашы да, карылары да, долбоор үчүн эмне маанилүү экенин, эмне үчүн компания акчаны биз бардыгыбыз жетүү үчүн аракет кылып жаткан нерсеге жумшап жаткандыгы жөнүндө айта баштаса... алардын көбү өздөрүн жакшыраак сезишет, анткени алар алардын ишинин башкалардын иши менен кандай байланышы бар экенин көрүшөт. Бир жагынан, мен жеке өзүм жооп бере турган нерсени түшүнөм. Бирок ишти бүтүрүү үчүн бизге башка бардык адамдар керек. Эгер сиз чындап эле бүттүм деп ойлосоңуз, анда бизде дайыма долбоордо жасай турган иштер бар!

Олег: Салыштырмалуу айтсак, эгер сиз Канбанга ылайык иштесеңиз, кандайдыр бир тестирлөөдөн өтпөсөңүз, анда эмне кылып жатканыңызды (мисалы, программалоону) таштап, тестерлерге жардам бере аласыз.

Тим: Так. Менин оюмча, эң мыкты техниктер, эгер сиз аларды жакшылап карасаңыз, алар өздөрүнүн менеджерлери. Муну кантип формулировка кылсам болот...

Олег: Сиздин жашооңуз сиз башкарган долбооруңуз.

Тим: Так! Дегеним, сен жоопкерчиликти аласың, маселени түшүнөсүң жана чечимдериң алардын ишине таасир этиши мүмкүн экенин көргөндө адамдар менен байланышасың, ушул сыяктуу нерселер. Бул жөн эле үстөлүңүздө отуруп, жумушуңузду аткарып, жада калса айланаңызда эмне болуп жатканын байкабай калуу эмес. Жок жок жок. Айтмакчы, Agileдин эң жакшы жактарынын бири – алар кыска спринттерди сунуш кылышкан, анткени бул жол менен бардык катышуучулардын абалын ачык байкоого болот, алар бардыгын чогуу көрө алышат. Биз күн сайын бири-бирибиз жөнүндө сүйлөшөбүз.

Тобокелдиктерди башкарууга кантип кирүү керек

Олег: Бул чөйрөдө кандайдыр бир расмий билим структурасы барбы? Мисалы, мен Java иштеп чыгуучусумун жана билими боюнча чыныгы долбоордун менеджери болбостон, тобокелдиктерди башкарууну түшүнгүм келет. Мен, балким, МакКоннеллдин "Программалык камсыздоо долбоору канча турат" деген китебин окуп чыгам, анан эмне болот? Биринчи кадамдар кандай?

Тим: Биринчиси - долбоордогу адамдар менен баарлаша баштоо. Бул кесиптештер менен баарлашуу маданиятын тез арада жакшыртууну камсыз кылат. Биз баарын жашырбай, демейки боюнча ачуудан башташыбыз керек. Айткын: ушулар мени кыйнап жатат, булар мени түнү менен уктатпайт, бүгүн түнү менен ойгонуп: Кудайым, мен бул жөнүндө ойлонушум керек! Башкалар да ушундай эле нерсени көрүп жатабы? Топ катары биз бул мүмкүн болуучу көйгөйлөргө жооп беришибиз керекпи? Сиз бул темалар боюнча талкууну колдой билишиңиз керек. Биз иштей турган алдын ала даярдалган формула жок. Кеп гамбургер жасоодо эмес, кептин баары адамдарда. "Чизбургер жасадым, чизбургер сат" деген бизге такыр тиешелүү эмес, ошондуктан мен бул жумушту абдан жакшы көрөм. Мага азыр жетекчилердин кылгандарынын баары команданын менчигине өткөнү жагат.

Олег: Сиз китептерде жана интервьюларда адамдар диаграммадагы сандарга караганда бактылуулукка көбүрөөк маани бериши жөнүндө айткансыз. Экинчи жагынан, сиз командага: биз devopsко өтүп жатабыз, эми программист тынымсыз баарлашып турушу керек деп айтканда, бул анын комфорт зонасынан алыс болушу мүмкүн. Ал эми бул учурда, айталы, ал абдан бактысыз болушу мүмкүн. Бул кырдаалда эмне кылуу керек?

Тим: Эмне кыларымды так билбейм. Эгерде иштеп чыгуучу өтө обочолонгон болсо, анда алар биринчи кезекте эмне үчүн иш жасалып жатканын түшүнүшпөйт, алар жөн гана иштин өз бөлүгүн карашат жана мен "контекст" деп атаган нерсеге кириши керек. Ал баары бири-бири менен кандай байланышта экенин түшүнүшү керек. Анан, албетте, мен расмий презентацияларды же ушуга окшогон нерселерди билдирбейм. Мен кесиптештер менен иштин өзүңүз жооптуу болгон бөлүгү жөнүндө эле эмес, бүтүндөй иш жөнүндө баарлашуу керек экендиги жөнүндө айтып жатам. Бул жерде сиз өзүңүздүн ишиңизди бири-бирине шайкеш келтирүү үчүн идеяларды, жалпы макулдашууларды жана жалпы көйгөйдү кантип чогуу чечүүнү талкуулай баштасаңыз болот.

Аларга адаптациялоого жардам берүү үчүн, алар көбүнчө техниктерди тренингге жиберүүнү каалашат жана алар окутууну талкуулашат. Менин бир досум үйрөтүү иттер үчүн деп айтканды жакшы көрөт. Адамдар үчүн тренинг бар. Иштеп чыгуучу катары үйрөнүүнүн эң жакшы жактарынын бири - курбуларыңыз менен баарлашуу. Эгер кимдир бирөө бир нерсеге чындап эле жакшы болсо, анын иштешин карап же алар менен иши же башка нерселер жөнүндө сүйлөшүш керек. Кээ бир кадимки Кент Бек дайыма экстремалдык программалоо жөнүндө сөз кылган. Бул күлкүлүү, анткени XP ушунчалык жөнөкөй идея, бирок ал көптөгөн көйгөйлөрдү жаратат. Кээ бирөөлөр үчүн XP жасоо достордун алдында жылаңач чечинүүгө мажбурлангандай. Алар менин эмне кылып жатканымды көрүшөт! Алар менин кесиптештерим, алар көрүп эле тим болбостон, түшүнүшөт! коркунучтуу! Кээ бир адамдар олуттуу толкунданып башташат. Бирок бул үйрөнүүнүн эң акыркы жолу экенин түшүнгөндө, баары өзгөрөт. Сиз адамдар менен тыгыз иштешесиз, кээ бир адамдар теманы сизден алда канча жакшы түшүнүшөт.

Майкл: Бирок мунун баары сизди комфорт зонасынан чыгууга мажбурлайт. Инженер катары сиз өзүңүздүн ыңгайлуу зонаңыздан чыгып, баарлашышыңыз керек. Көйгөйдү чечүүчү катары сиз өзүңүздү дайыма алсыз абалга салып, эмне туура эмес болушу мүмкүн экенин ойлонушуңуз керек. Иштин бул түрү табиятынан ыңгайсыздык үчүн иштелип чыккан. Сиз аң-сезимдүү түрдө өзүңүздү стресстик абалга салып жатасыз. Көбүнчө эл алардан качат, эл бактылуу бала болгонду жакшы көрөт.

Тим: Эмне кылса болот, ачык эле чыгып: “Баары жайында, мен көтөрө алам! Өзүмдү ыңгайсыз сезген жалгыз мен эмесмин. Келгиле, ар кандай ыңгайсыз нерселерди чогуу, бир команда болуп талкуулайлы!” Бул биздин жалпы көйгөйлөрүбүз, биз алар менен күрөшүүбүз керек, билесизби? Менимче, өзгөчө гений иштеп чыгуучулар мамонттор сыяктуу, алар жок болушту. Жана алардын мааниси абдан чектелген. Эгер баарлаша албасаң, жакшы катыша албайсың. Ошондуктан, жөн эле сүйлө. Чынчыл жана ачык бол. Бул кимдир бирөө үчүн жагымсыз болгонуна абдан өкүнөм. Элестете аласызбы, көп жыл мурун Америка Кошмо Штаттарында негизги коркунуч өлүм эмес, бирок, эмне деп ойлойсуз, бир изилдөө болгон? Эл алдында сүйлөөдөн коркуу! Бул кайсы бир жерде катуу комплимент айткандан көрө өлүүнү каалагандар бар экенин билдирет. Жана менимче, сиз эмне кылып жатканыңызга жараша кээ бир негизги көндүмдөрдүн болушу жетиштүү. Сүйлөө көндүмдөрү, жазуу көндүмдөрү - бирок сиздин ишиңизде чындап керек болгондо гана. Эгер сиз аналитик болуп иштесеңиз, бирок окуп, жазып, сүйлөй албасаңыз, тилекке каршы, менин долбоорлорумда эч кандай ишиңиз болбойт!

Байланыш баасы

Олег: Мындай кеткен кызматкерлерди жумушка алуу ар кандай себептерден улам кымбатыраак эмеспи? Анткени, алар иштегендин ордуна тынымсыз сүйлөшүп жатышат!

Тим: Мен бардыгын эмес, команданын өзөгүн айткым келди. Эгер сизде маалымат базаларын тууралоодо чындап эле сонун, маалымат базаларын тюнингди жакшы көргөн жана өмүр бою маалымат базаларыңызды жөндөөнү уланта турган адам болсо, ошону менен эле бүтүп калыңыз. Бирок мен долбоордун өзүндө жашагысы келген адамдар жөнүндө айтып жатам. Долбоорду иштеп чыгууга багытталган команданын өзөгү. Бул адамдар, чынында эле, дайыма бири-бири менен баарлашуу керек. Ал эми өзгөчө долбоордун башында, сиз тобокелдиктерди, глобалдык максаттарга жетүү жолдорун жана ушул сыяктууларды талкуулаганда.

Майкл: Бул адистигине, жөндөмүнө жана иштөө ыкмаларына карабастан долбоорго катышкандардын бардыгына тиешелүү. Баардыгыңар долбоордун ийгилигине кызыкдарсыңар.

Тим: Ооба, сиз долбоордун ишке ашуусуна жардам берүү сиздин милдетиңиз деп эсептейсиз. Сиз программист, аналитик, интерфейс дизайнери, ким болбосун. Мен күн сайын эртең менен жумушка келем жана биз ушундай кылабыз. Биз бул адамдардын шык-жөндөмүнө карабастан, бардыгы үчүн жооптуубуз. Бул чоңдор менен баарлашкан адамдардын тобу.

Олег: Чындыгында, көп сүйлөгөн кызматкерлер жөнүндө айтсам, мен адамдардын, айрыкча, devopsко өтүүнү суранган менеджерлердин дүйнөгө болгон жаңы көз карашына каршы пикирлерин окшоштурууга аракет кылдым. Жана сиз, консультанттар катары, бул каршы пикирлерди иштеп чыгуучу катары мага караганда жакшыраак билишиңиз керек! Менеджерлерди эмне тынчсыздандырат?

Тим: менеджерлер? Хм. Көбүнчө, менеджерлер көйгөйлөрдөн улам кысымга алынып, тез арада бир нерсени бошотуу жана жеткирүү жана башка ушул сыяктуу муктаждыктарга туш болушат. Алар биздин бир нерсени тынымсыз талкуулап, талашып-тартышып жатканыбызды карап турушат жана муну минтип көрүшөт: баарлашуулар, баарлашуулар, баарлашуулар... Дагы кандай сүйлөшүүлөр? Жумушка кайтуу! Анткени сүйлөшүү аларга жумуш сыяктуу сезилбейт. Сиз код жазбайсыз, программалык камсыздоону сынабайсыз, эч нерсе кылбайсыз - эмне үчүн сизди бир нерсе кылууга жөнөтпөйсүз? Анткени, жеткирүү бир айдан кийин эле!

Майкл: Код жазыңыз!

Тим: Менин оюмча, алар иш эмес, прогресстин байкалбагандыгы үчүн тынчсызданып жаткандай туюлат. Биз ийгиликке жакындап бараткандай сезилиши үчүн, алар клавиатурадагы баскычтарды басып жатканыбызды көрүшү керек. Эртеден кечке чейин күн бою. Бул биринчи маселе.

Олег: Миша, сен бир нерсе жөнүндө ойлонуп жатасың.

Майкл: Кечиресиз, ойго батып кетип, эсиме түшүп калдым. Мунун баары мага кечээги кызыктуу митингди эске салды... Кечээ митингдер өтө көп болду... Анан мунун баары абдан тааныш угулат!

Айлыксыз жашоо

Тим: Айтмакчы, баарлашуу үчүн “митингдерди” уюштуруунун кереги жок. Дегеним, иштеп чыгуучулардын ортосундагы эң пайдалуу талкуулар алар бири-бири менен сүйлөшкөндө болот. Эртең менен бир чөйчөк кофе ичип кирсеңиз, беш киши чогулуп, техникалык нерсени катуу талкуулап жатышат. Мен үчүн, эгерде мен бул долбоордун менеджери болсом, жөн гана жылмайып, менин бизнесим боюнча бир жакка барганым жакшы, алар талкуулашсын. Алар буга чейин эле мүмкүн болушунча тартылган. Бул жакшы жышаан эмес.

Олег: Айтмакчы, сиздин китебиңизде эмне жакшы, эмне жаман деген бир топ жазуулар бар. Алардын бирин өзүңүз колдоносузбу? Салыштырмалуу айтсак, азыр сизде компанияңыз бар жана ал абдан адаттан тыш жол менен түзүлгөн ...

Тим: Ортодоксалдуу, бирок бул аппарат бизге эң сонун жарашат. Биз бири-бирибизди көптөн бери билебиз. Биз бири-бирибизге ишенчүбүз, өнөктөш болгонго чейин бири-бирибизге абдан ишенчүбүз. Ал эми, мисалы, бизде такыр айлык жок. Биз жөн эле иштейбиз, мисалы, мен кардарларымдан акча тапсам, анда акчанын баары мага кетти. Андан кийин уюмга мүчөлүк акы төлөйбүз, бул компаниянын өзүн багуу үчүн жетиштүү. Мындан тышкары, биз ар кандай нерселерге адистешкен. Мисалы, мен бухгалтерлер менен иштейм, салык декларациясын толтурам, компанияга ар кандай административдик иштерди жасайм, ал үчүн мага эч ким акча төлөбөйт. Джеймс менен Том биздин веб-сайтта иштешет жана аларга эч ким акча төлөбөйт. Акчаңызды төлөп турсаңыз, эч ким сизге эмне кылуу керектигин айтууну ойлобойт. Мисалы, Том азыр мурункуга караганда алда канча аз иштейт. Азыр анын башка кызыкчылыктары бар, ал Гильдия үчүн эмес. Бирок ал акысын төлөп турса, ага эч ким келип: «Эй, Том, жумушка кет!» деп айтпайт. Араңарда акча жок болгондо кесиптештер менен иштешүү абдан оңой. Ал эми азыр биздин мамилебиз ар кандай адистиктерге карата негизги идеялардын бири болуп саналат. Бул иштейт жана ал абдан жакшы иштейт.

Эң жакшы кеңеш

Майкл: "Эң жакшы кеңешке" кайрылып, кардарларыңызга кайра-кайра айта турган нерсеңиз барбы? 80/20 жөнүндө ой бар, кээ бир кеңештер, балким, көп кайталанат.

Тим: Мен качандыр бир кезде «Аюулар менен вальс» сыяктуу китеп жазсаң, тарыхтын агымын өзгөртүп, эл токтоп калат деп ойлогом, бирок... Карачы, компаниялар көбүнчө аларда баары жакшы деп түр көрсөтүшөт. Жаман нерсе болоору менен алар үчүн шок жана күтүлбөгөн нерсе болот. «Мына, биз системаны сынап көрдүк, ал эч кандай системалык сыноодон өтпөйт, бул дагы үч ай пландан тышкары иш, бул кантип болушу мүмкүн? Ким билди? Эмне туура эмес болушу мүмкүн? Чын эле, буга ишенесиңби?

Мен азыркы кырдаалга өтө ачууланбаш керек экенин түшүндүрүүгө аракет кылып жатам. Биз муну талкуулашыбыз керек, чындап эле түшүнүшүбүз керек, эмне туура эмес болуп кетиши мүмкүн жана келечекте мындай окуялардын алдын алуу үчүн. Эгер көйгөй чыкса, аны менен кантип күрөшөбүз, аны кантип кармайбыз?

Мен үчүн мунун баары коркунучтуу көрүнөт. Адамдар татаал, өкүнүчтүү көйгөйлөр менен күрөшүшөт жана эгер алар манжаларын кайчылаштырып, жакшылыкка үмүттөнсө, чындыгында "эң жакшы" болот деп түр көрсөтө беришет. Жок, андай иштебейт.

Тобокелдиктерди башкарууну үйрөнүңүз!

Майкл: Сиздин оюңузча, канча уюм тобокелдиктерди башкаруу менен алектенет?

Тим: Мени кыжырданткан нерсе, адамдар жөн гана тобокелдиктерди жазып, пайда болгон тизмени карап, ишке киришет. Чынында, алар үчүн тобокелдиктерди аныктоо тобокелдиктерди башкаруу болуп саналат. Бирок мен үчүн бул суроого негиз болуп көрүнөт: макул, тизме бар, сиз так эмнени өзгөртөсүз? Сиз бул тобокелдиктерди эске алуу менен иш-аракеттердин стандарттык ырааттуулугун өзгөртүү керек. Эгерде иштин эң кыйын бөлүгү болсо, аны чечүү керек, андан кийин гана жөнөкөй нерсеге өтүү керек. Биринчи спринттерде татаал маселелерди чече баштаңыз. Бул мурунтан эле тобокелдиктерди башкаруу окшойт. Бирок, адатта, адамдар тобокелдиктердин тизмесин түзгөндөн кийин эмнени өзгөрткөнүн айта алышпайт.

Майкл: Анан дагы, бул компаниялардын канчасы тобокелдиктерди башкаруу менен алектенет, беш пайыз?

Тим: Тилекке каршы, мен муну жек көрөм, бирок бул өтө маанилүү эмес. Бирок бештен ашык, анткени чындап эле чоң долбоорлор бар жана алар жок дегенде бир нерсе жасабаса, алар жөн эле жашай албайт. Жок дегенде 25% болсо аябай таң калам деп коёлу. Чакан долбоорлор, адатта, мындай суроолорго жооп берет: көйгөй бизге таасир этсе, анда биз аны чечебиз. Андан кийин алар ийгиликтүү кыйынчылыктарга кабылып, көйгөйлөрдү башкаруу жана кризисти башкаруу менен алектенишет. Маселени чечүүгө аракет кылып, маселе чечилбесе, кризисти башкарууга кош келиңиз.

Ооба, «көйгөйлөр пайда болгондо чечебиз» деп көп угам. Албетте, биз болобу? Чын эле чечебизби?

Олег: Сиз муну жөнөкөй жана жөн гана долбоордун уставына маанилүү инварианттарды жазсаңыз болот, эгерде инварианттар бузулса, долбоорду кайра баштаңыз. Бул абдан ачуулуу болуп чыгат.

Майкл: Ооба, тобокелчиликтер пайда болгондо, долбоор жөн эле кайра аныкталды. Жакшы, бинго, маселе чечилди, мындан ары кабатыр болбо!

Тим: Калыбына келтирүү баскычын басалы! Жок, андай иштебейт.

DevOops 2019дагы негизги баяндама

Майкл: Бул маектин акыркы суроосуна келдик. Сиз кийинки DevOops программасына негизги баяндама менен келе жатасыз, эмнени айткыңыз келип жатканыңыздын купуялуулугун көтөрө аласызбы?

Тим: Азыр алардын алтоо эмгек маданияты, уюмдардын айтылбаган эрежелери жөнүндө китеп жазып жатышат. Маданият уюмдун негизги баалуулуктары менен аныкталат. Көбүнчө эл муну байкабайт, бирок көп жылдар бою консалтингде иштегендиктен, байкап көнүп калганбыз. Сиз компанияга кирип, бир нече мүнөттүн ичинде эмне болуп жатканын сезе баштайсыз. Биз муну "даам" деп атайбыз. Кээде бул жыт чындап жакшы, ал эми кээде бул, жакшы, ой. Ар кандай уюмдар үчүн нерселер такыр башкача.

Майкл: Мен да көп жылдардан бери консалтингде иштеп келем жана эмне жөнүндө айтып жатканыңызды жакшы түшүнөм.

Тим: Чынында, негизги баяндамада айта турган нерселердин бири, бардыгы компания тарабынан аныктала бербейт. Сиз жана сиздин командаңыз, жамаат катары өзүңүздүн командалык маданиятыңыз бар. Бул бүт компания, же өзүнчө бөлүм, өзүнчө команда болушу мүмкүн. Бирок сиз айтканга чейин, бул жерде биз ишенебиз, бул жерде эмне маанилүү... Конкреттүү иш-аракеттердин артында турган баалуулуктар жана ишенимдер түшүнүлмөйүнчө, сиз маданиятты өзгөртө албайсыз. Жүрүм-турумун байкоо оңой, бирок ишенимди издөө кыйын. DevOps - бул нерселер барган сайын татаалдашып баратканынын сонун мисалы. Өз ара аракеттенүү татаалдашып баратат, алар таза же так болбой жатат, ошондуктан сиз эмнеге ишенесиз жана айланаңыздагылардын баары эмне жөнүндө унчукпай турганы жөнүндө ойлонушуңуз керек.

Эгер сиз тез натыйжаларга жетүүнү кааласаңыз, бул жерде сиз үчүн жакшы тема: эч ким "билбейм" деп айтпаган компанияларды көрдүңүз беле? Адам бир нерсени билбейт деп мойнуна алгыча кыйнаган жерлер бар. Ар бир адам баарын билет, баары укмуш эрудит. Сиз каалаган адамга кайрыласыз, ал суроого дароо жооп бериши керек. "Билбейм" дегендин ордуна. Ура, алар бир топ эрудиттерди жалдашкан! Ал эми кээ бир маданияттарда "билбейм" деп айтуу алсыздыктын белгиси катары кабыл алынышы мүмкүн. Тескерисинче, баары “билбейм” деп айта турган уюмдар да бар. Ал жерде бул толугу менен мыйзамдуу, эгер кимдир бирөө суроого жооп катары таштанды айта баштаса, бул нормалдуу жооп: "Сиз эмне жөнүндө айтып жатканыңызды билбейсиз, туурабы?" жана мунун баарын тамашага айландырыңыз.

Идеалында, сиз дайыма бактылуу боло турган жумушка ээ болгуңуз келет. Бул оңой болбойт, ар бир күн ачык жана жагымдуу эмес, кээде талыкпай эмгектениш керек, бирок эсептеп баштаганда, мындай болуп калат: оо, бул чын эле керемет жер, мен бул жерде иштегенимди жакшы сезем, эмоционалдык жактан да, интеллектуалдык жактан да. Ал эми консультант болуп барып, үч ай туруштук бере албай, үрөйү учуп качып кетээриңизди дароо түшүнгөн компаниялар бар. Мен докладда мына ушулар женунде айткым келет.

Тим Листер негизги баяндама менен келет "Каармандар, коомчулук жана маданият: гүлдөп өнүгүүнүн маанилүү факторлору"2019-жылдын 29-30-октябрында Санкт-Петербург шаарында өтө турган DevOops 2019 конференциясына. Сиз билеттерди сатып алууга болот расмий сайтында. Биз сизди DevOopsто күтөбүз!

Source: www.habr.com

Комментарий кошуу