Գիրքը «Ինչպես կառավարել մտավորականներին. Ես, խելագարները և գիկերը»

Գիրքը «Ինչպես կառավարել մտավորականներին. Ես, խելագարները և գիկերը» Նվիրված է նախագծի ղեկավարներին (և նրանց, ովքեր երազում են ղեկավար դառնալ):

Տոննաներով կոդ գրելը դժվար է, բայց մարդկանց կառավարելն ավելի դժվար է: Այսպիսով, ձեզ պարզապես անհրաժեշտ է այս գիրքը, որպեսզի սովորեք, թե ինչպես անել երկուսն էլ:

Հնարավո՞ր է համատեղել զվարճալի պատմություններն ու լուրջ դասերը։ Մայքլ Լոպը (նեղ շրջանակներում հայտնի է նաև որպես Ռանդս) հաջողության է հասել։ Դուք կգտնեք գեղարվեստական ​​պատմություններ հորինված մարդկանց մասին, որոնք ունեն աներևակայելի պարգևատրող (թեև գեղարվեստական) փորձառություններ: Ահա թե ինչպես է Ռանդսը կիսվում իր բազմազան, երբեմն տարօրինակ փորձով, որը ձեռք է բերել ՏՏ խոշոր կորպորացիաներում աշխատելու տարիների ընթացքում՝ Apple, Pinterest, Palantir, Netscape, Symantec և այլն:

Դուք ծրագրի ղեկավար եք: Կամ ուզում եք հասկանալ, թե ինչ է անում ձեր անիծյալ շեֆը ամբողջ օրը: Ռանդսը կսովորեցնի ձեզ, թե ինչպես գոյատևել ուռճացված հնդկահավերի թունավոր աշխարհում և բարգավաճել դիսֆունկցիոնալ շքեղ մարդկանց ընդհանուր խելագարության մեջ: Մոլագար ուղեղների այս տարօրինակ համայնքում կան նույնիսկ ավելի տարօրինակ արարածներ՝ մենեջերներ, որոնք միստիկ կազմակերպչական ծիսակարգի միջոցով իշխանություն են ձեռք բերել բազմաթիվ մարդկանց պլանների, մտքերի և բանկային հաշիվների վրա:

Այս գիրքը նման չէ կառավարման կամ ղեկավարության որևէ ձեռագրի: Մայքլ Լոպը ոչինչ չի թաքցնում, պարզապես պատմում է այնպես, ինչպես կա (գուցե ոչ բոլոր պատմությունները պետք է հրապարակել. P): Բայց միայն այս կերպ դուք կհասկանաք, թե ինչպես գոյատևել այդպիսի շեֆի հետ, ինչպես կառավարել գիքերին և խելագարներին և ինչպես բերել «այդ անիծյալ նախագիծը» երջանիկ ավարտի:

Հատված. Ինժեներական մտածելակերպ

Մտքեր. Պե՞տք է արդյոք շարունակել կոդ գրել:

Ռենդսի մենեջերների կանոնների գիրքը պարունակում է ժամանակակից մենեջերական «անհրաժեշտ բաների» շատ կարճ ցուցակ: Այս ցանկի լակոնիզմը բխում է նրանից, որ «պետք է» հասկացությունը մի տեսակ բացարձակ է, իսկ երբ խոսքը վերաբերում է մարդկանց, բացարձակ հասկացությունները շատ քիչ են: Մի աշխատակցի համար հաջող կառավարման մեթոդը իսկական աղետ կլինի մյուսի համար: Այս միտքը մենեջերի «պարտադիր անելիքների» ցանկի առաջին կետն է.

Մնացեք ճկուն:

Մտածել, որ դուք արդեն գիտեք ամեն ինչ, շատ վատ գաղափար է: Մի իրավիճակում, երբ միակ մշտական ​​փաստն այն է, որ աշխարհը անընդհատ փոխվում է, ճկունությունը դառնում է միակ ճիշտ դիրքորոշումը:

Պարադոքսալ կերպով, ցուցակի երկրորդ կետը զարմանալիորեն անճկուն է: Այնուամենայնիվ, այս կետը իմ անձնական ֆավորիտն է, քանի որ կարծում եմ, որ այն օգնում է ստեղծել կառավարչական աճի հիմքը: Այս պարբերությունը կարդում է.

Դադարեցրեք կոդը գրել:

Տեսականորեն, եթե ցանկանում եք լինել մենեջեր, դուք պետք է սովորեք վստահել նրանց, ովքեր աշխատում են ձեզ համար և ամբողջությամբ հանձնել կոդավորումը նրանց: Այս խորհուրդը սովորաբար դժվար է մարսվում, հատկապես նորաստեղծ ղեկավարների համար: Հավանաբար, նրանց մենեջեր դառնալու պատճառներից մեկը զարգացման մեջ նրանց արտադրողականությունն է, և երբ ամեն ինչ սխալ է ընթանում, նրանց առաջին արձագանքն այն է, որ հետ կանգնեն այն հմտություններին, որոնց վրա նրանք լիովին վստահում են, այսինքն՝ կոդ գրելու նրանց կարողությունը:

Երբ տեսնում եմ, որ նորաստեղծ մենեջերը «սուզվում է» կոդ գրելու մեջ, ասում եմ նրան. «Մենք գիտենք, որ դու կարող ես կոդ գրել։ Հարցն այն է՝ կարո՞ղ եք ղեկավարել: Դուք այլևս պատասխանատու չեք միայն ձեզ համար, դուք պատասխանատու եք ամբողջ թիմի համար. և ես ուզում եմ համոզվել, որ դուք կարող եք ստիպել ձեր թիմին ինքնուրույն լուծել խնդիրները՝ առանց ծածկագիրը ինքներդ գրելու: Ձեր խնդիրն է պարզել, թե ինչպես պետք է չափել ինքներդ: Ես չեմ ուզում, որ դու միայն մեկը լինես, ես ուզում եմ, որ քեզ նման շատերը լինեն»:

Լավ խորհուրդ, չէ՞: Սանդղակ. Կառավարում. Պատասխանատվություն. Նման սովորական բառերը. Ափսոս, որ խորհուրդը սխալ է։

Սխա՞լ է:

Այո. Խորհուրդը սխալ է! Ոչ բոլորովին սխալ, բայց այնքան սխալ, որ ես ստիպված էի զանգահարել մի քանի նախկին գործընկերների և ներողություն խնդրել. Սխալ է! Այո... Նորից սկսեք ծրագրավորումը: Սկսեք Python-ից և Ruby-ից: Այո, ես լուրջ եմ ասում: Ձեր կարիերան կախված է դրանից»:

Երբ ես սկսեցի իմ կարիերան որպես ծրագրակազմ մշակող Borland-ում, ես աշխատում էի Paradox Windows թիմում, որը հսկայական թիմ էր: Միայն 13 հավելված մշակող կար: Եթե ​​ավելացնեք մարդկանց այլ թիմերից, ովքեր նույնպես անընդհատ աշխատում էին այս նախագծի հիմնական տեխնոլոգիաների վրա, ինչպիսիք են տվյալների բազայի հիմնական շարժիչը և հիմնական հավելվածի ծառայությունները, դուք կստանաք 50 ինժեներ, որոնք անմիջականորեն ներգրավված են այս արտադրանքի մշակման մեջ:

Ոչ մի այլ թիմ, որտեղ ես երբևէ աշխատել եմ, չի կարող նման չափի լինել: Փաստորեն, տարեցտարի աստիճանաբար նվազում է այն թիմում, որտեղ ես աշխատում եմ: Ինչ է կատարվում? Արդյո՞ք մենք՝ ծրագրավորողներս, միասին դառնում ենք ավելի ու ավելի խելացի: Ոչ, մենք պարզապես կիսում ենք բեռը:

Ի՞նչ են անում մշակողները վերջին 20 տարիների ընթացքում: Այս ընթացքում մենք գրել ենք կոդ: Ծով կոդը! Մենք այնքան շատ կոդ գրեցինք, որ որոշեցինք, որ լավ գաղափար կլինի ամեն ինչ պարզեցնել և բաց կոդով անցնել:

Բարեբախտաբար, ինտերնետի շնորհիվ այս գործընթացն այժմ դարձել է հնարավորինս պարզ: Եթե ​​դուք ծրագրավորող եք, կարող եք ստուգել այն հենց հիմա: Փնտրեք ձեր անունը Google-ում կամ Github-ում և կտեսնեք կոդը, որի մասին վաղուց մոռացել եք, բայց որը կարող է գտնել բոլորը: Սարսափելի, չէ՞: Չգիտեի՞ք, որ կոդը հավերժ է ապրում: Այո, նա հավերժ է ապրում:

Կոդը հավերժ է ապրում: Եվ լավ կոդը ոչ միայն հավերժ է ապրում, այլև աճում է, քանի որ նրանք, ովքեր գնահատում են այն, անընդհատ ապահովում են, որ այն թարմ է: Բարձրորակ, լավ պահպանված կոդի այս կույտը օգնում է նվազեցնել ինժեներական թիմի միջին չափը, քանի որ այն թույլ է տալիս մեզ կենտրոնանալ գոյություն ունեցող կոդի վրա, այլ ոչ թե նոր կոդ գրելու, և աշխատանքը կատարել ավելի քիչ մարդկանց հետ և ավելի կարճ ժամանակում:

Պատճառաբանության այս գիծը վհատեցնող է թվում, բայց գաղափարն այն է, որ մենք բոլորս ընդամենը ինտեգրացիոն ավտոմատների մի փունջ ենք, որոնք օգտագործում են սոսնձման ժապավենը, որպեսզի միացնեն գոյություն ունեցող իրերի տարբեր բիթերը՝ նույն բանի մի փոքր այլ տարբերակ ստեղծելու համար: Սա դասական մտածողության գիծ է ավագ ղեկավարների շրջանում, ովքեր սիրում են աութսորսինգը: «Յուրաքանչյուր ոք, ով գիտի, թե ինչպես օգտագործել Google-ը և ունի կպչուն ժապավեն, կարող է դա անել: Այդ դեպքում ինչո՞ւ ենք մենք մեծ գումարներ վճարում մեր մեքենաներին»։

Մենք այս ղեկավարության տղաներին իսկապես մեծ գումարներ ենք վճարում, բայց նրանք նման անհեթեթություն են մտածում։ Եվս մեկ անգամ, իմ հիմնական միտքն այն է, որ մեր մոլորակի վրա կան շատ փայլուն և շատ աշխատասեր մշակողներ. նրանք իսկապես փայլուն են և աշխատասեր, թեև ոչ մի րոպե չեն անցկացրել հավատարմագրված բուհերում նստած: Օ, այո, հիմա դրանք ավելի ու ավելի շատ են:

Ես չեմ առաջարկում, որ սկսեք անհանգստանալ ձեր տեղի համար միայն այն պատճառով, որ որոշ հանճարեղ ընկերներ իբր որսում են այն: Ես առաջարկում եմ ձեզ սկսել անհանգստանալ դրա համար, քանի որ ծրագրային ապահովման մշակման էվոլյուցիան, հավանաբար, ավելի արագ է ընթանում, քան դուք: Դուք աշխատում եք տասը տարի, որոնցից հինգը որպես մենեջեր, և մտածում եք. «Ես արդեն գիտեմ, թե ինչպես է մշակվում ծրագրակազմը»: Այո, դուք գիտեք: Ցտեսություն…

Դադարեք կոդ գրել, բայց...

Եթե ​​հետևեք իմ օրիգինալ խորհրդին և դադարեք գրել կոդը, դուք նույնպես կամավոր կդադարեցնեք մասնակցել ստեղծման գործընթացին: Այս պատճառով է, որ ես ակտիվորեն չեմ օգտվում աութսորսինգից: Ավտոմատները չեն ստեղծում, արտադրում են։ Լավ մշակված գործընթացները մեծ գումարներ են խնայում, բայց դրանք ոչ մի նոր բան չեն բերում մեր աշխարհին:

Եթե ​​դուք ունեք փոքր թիմ, որը շատ բան է անում փոքր գումարի համար, ապա կոդ գրելը դադարեցնելու գաղափարը ինձ թվում է կարիերայի վատ որոշում: Անգամ հրեշավոր ընկերություններում՝ իրենց անվերջ կանոնակարգերով, գործընթացներով և քաղաքականությամբ, դուք իրավունք չունեք մոռանալ, թե ինչպես ինքներդ մշակել ծրագրակազմ: Իսկ ծրագրային ապահովման մշակումն անընդհատ փոխվում է: Այն փոխվում է հենց հիմա: Ձեր ոտքերի տակ! Հենց այս վայրկյանին!

Դուք առարկություններ ունեք։ Հասկանալ. Եկեք լսենք.

«Ռանդս, ես գնում եմ դեպի տնօրենի աթոռը։ Եթե ​​շարունակեմ կոդ գրել, ոչ ոք չի հավատա, որ ես կարող եմ աճել»։

Ես ուզում եմ ձեզ հարցնել սա. քանի որ դուք նստել եք ձեր «Ես պատրաստվում եմ գլխավոր տնօրեն դառնալ» ամբիոնում, նկատե՞լ եք, որ ծրագրային ապահովման զարգացման լանդշաֆտը փոխվում է նույնիսկ ձեր ընկերության ներսում: Եթե ​​ձեր պատասխանը այո է, ապա ես ձեզ մեկ այլ հարց կտամ՝ կոնկրետ ինչպե՞ս է այն փոխվում և ի՞նչ եք պատրաստվում անել այս փոփոխությունների հետ կապված։ Եթե ​​դուք պատասխանել եք «ոչ» իմ առաջին հարցին, ապա դուք պետք է տեղափոխվեք այլ ամբիոն, քանի որ (գրազ եմ գալիս!) ծրագրային ապահովման մշակման դաշտը փոխվում է հենց այս վայրկյանին: Ինչպե՞ս եք երբևէ պատրաստվում աճել, եթե դանդաղ, բայց հաստատ մոռանաք, թե ինչպես մշակել ծրագրակազմ:

Իմ խորհուրդն այն է, որ չպարտադրվեք ձեր հաջորդ արտադրանքի համար տոննա առանձնահատկություններ կիրառելով: Դուք պետք է անընդհատ քայլեր ձեռնարկեք՝ հետևելու համար, թե ինչպես է ձեր թիմը ծրագրային ապահովում կառուցում: Դուք կարող եք դա անել և որպես տնօրեն, և որպես փոխնախագահ: Ինչ որ այլ բան?

«Ուֆ, Ռանդս։ Բայց ինչ-որ մեկը պետք է լինի արբիտրը: Ինչ-որ մեկը պետք է տեսնի մեծ պատկերը: Եթե ​​կոդ գրեմ, տեսանկյունը կկորցնեմ»։

Դուք դեռ պետք է լինեք մրցավարը, դուք դեռ պետք է հեռարձակեք որոշումները, և դուք դեռ պետք է ամեն երկուշաբթի առավոտյան չորս անգամ շրջեք շենքով ձեր ինժեներներից մեկի հետ՝ լսելու նրա ամենշաբաթյա «Մենք բոլորս դատապարտված ենք» վանկարկումը 30 հոգու համար։ րոպե.! Բայց այդ ամենից բացի, դուք պետք է պահպանեք ինժեներական մտածելակերպը, և դա անելու համար պարտադիր չէ լինել լրիվ դրույքով ծրագրավորող:

Ինժեներական մտածելակերպը պահպանելու իմ խորհուրդները.

  1. Օգտագործեք զարգացման միջավայրը: Սա նշանակում է, որ դուք պետք է ծանոթ լինեք ձեր թիմի գործիքներին, ներառյալ կոդերի ստեղծման համակարգը, տարբերակի վերահսկումը և ծրագրավորման լեզուն: Արդյունքում, դուք հմուտ կդարձնեք այն լեզվին, որն օգտագործում է ձեր թիմը արտադրանքի մշակման մասին խոսելիս: Սա նաև թույլ կտա ձեզ շարունակել օգտագործել ձեր սիրած տեքստային խմբագրիչը, որը հիանալի է գործում:
  2. Դուք պետք է կարողանաք ցանկացած պահի ցանկացած մակերևույթի վրա նկարել մանրամասն ճարտարապետական ​​դիագրամ, որը նկարագրում է ձեր արտադրանքը: Հիմա ես նկատի չունեմ երեք բջիջներով և երկու սլաքներով պարզեցված տարբերակը։ Դուք պետք է իմանաք ապրանքի մանրամասն դիագրամը: Ամենադժվարը. Ոչ թե ցանկացած գեղեցիկ դիագրամ, այլ գծապատկեր, որը դժվար է բացատրել: Այն պետք է լինի քարտեզ, որը հարմար է արտադրանքի ամբողջական ըմբռնման համար: Այն անընդհատ փոխվում է, և դուք միշտ պետք է իմանաք, թե ինչու են տեղի ունեցել որոշակի փոփոխություններ:
  3. Ստանձնել գործառույթներից մեկի իրականացումը: Ես բառացիորեն շփոթվում եմ, երբ գրում եմ սա, քանի որ այս կետն ունի բազմաթիվ թաքնված վտանգներ, բայց ես իսկապես վստահ չեմ, որ դուք կարող եք իրականացնել #1 և #2 կետերը, առանց պարտավորվելու գոնե մեկ հատկանիշի ներդրման: Ինքներդ կիրառելով առանձնահատկություններից մեկը՝ ոչ միայն դուք ակտիվորեն կներգրավվեք զարգացման գործընթացում, այլև այն թույլ կտա ձեզ պարբերաբար անցնել «Ամեն ինչի համար պատասխանատու մենեջերի» դերին «Իրականացնող մարդու» դերին։ գործառույթներից»։ Այս խոնարհ և անհնազանդ վերաբերմունքը ձեզ կհիշեցնի փոքր որոշումների կարևորության մասին:
  4. Ես դեռ ամբողջապես դողում եմ: Կարծես ինչ-որ մեկն արդեն բղավում է ինձ վրա. (Եվ ես համաձայն եմ նրա հետ:) Այո, դուք դեռ մենեջերն եք, ինչը նշանակում է, որ դա պետք է լինի ինչ-որ փոքր գործառույթ, լա՞վ: Այո, դու դեռ շատ անելիքներ ունես։ Եթե ​​դուք պարզապես չեք կարող ստանձնել գործառույթի իրականացումը, ապա ես ձեզ համար մի քանի պահեստային խորհուրդ ունեմ՝ ուղղեք որոշ սխալներ: Այս դեպքում դուք չեք զգա ստեղծագործության բերկրանքը, բայց կունենաք ըմբռնում, թե ինչպես է ստեղծվում ապրանքը, ինչը նշանակում է, որ դուք երբեք դուրս չեք մնա աշխատանքից։
  5. Գրեք միավորի թեստեր: Ես դեռ դա անում եմ արտադրության ցիկլի վերջում, երբ մարդիկ սկսում են խենթանալ: Մտածեք դա որպես ձեր արտադրանքի առողջության ստուգաթերթ: Դա արեք հաճախ:

Կրկին առարկություն?

«Ռանդս, եթե կոդ գրեմ, թիմս կշփոթեցնեմ։ Նրանք չեն իմանա, թե ով եմ ես՝ մենեջե՞ր, թե մշակող»։

Եղավ:

Այո, ես ասացի. Ուրախ եմ, որ կարծում եք, որ կարող եք շփոթեցնել ձեր թիմին՝ պարզապես լողալով մշակողների լճակում: Դա պարզ է. ծրագրային ապահովման մշակման տարբեր դերերի միջև սահմանները ներկայումս շատ մշուշոտ են: UI-ի տղաները անում են այն, ինչը կարելի է լայնորեն անվանել JavaScript և CSS ծրագրավորում: Մշակողները ավելի ու ավելի են սովորում օգտատերերի փորձի դիզայնի մասին: Մարդիկ շփվում են միմյանց հետ և սովորում սխալների, այլոց ծածկագրի գողության մասին, ինչպես նաև այն մասին, որ մենեջերի համար հիմնավոր պատճառներ չկան չմասնակցելու այս զանգվածային, գլոբալ, խաչաձև փոշոտվող տեղեկատվական բախանալիային:

Բացի այդ, ցանկանու՞մ եք լինել հեշտությամբ փոխարինվող բաղադրիչներից բաղկացած թիմի մաս: Սա ոչ միայն կդարձնի ձեր թիմին ավելի արագաշարժ, այլ թիմի յուրաքանչյուր անդամի հնարավորություն կտա տեսնել ապրանքը և ընկերությունը տարբեր տեսանկյուններից: Ինչպե՞ս կարող ես ավելի հարգել Ֆրենկին՝ կառուցապատման գծով զբաղվող հանգիստ տղային, քան նրա շինարարական սցենարների պարզ նրբագեղությունը տեսնելուց հետո:

Չեմ ուզում, որ ձեր թիմը խառնաշփոթ ու քաոսային դառնա: Ընդհակառակը, ես ցանկանում եմ, որ ձեր թիմն ավելի արդյունավետ շփվի: Ես հավատում եմ, որ եթե դուք ներգրավված եք արտադրանքի ստեղծման մեջ և աշխատում եք առանձնահատկությունների վրա, ավելի մոտ կլինեք ձեր թիմին: Եվ ավելի կարևոր է, որ դուք ավելի մոտ կլինեք ձեր կազմակերպության ներսում ծրագրային ապահովման մշակման գործընթացի մշտական ​​փոփոխություններին:

Մի դադարեք զարգանալ

Բորլենդում իմ գործընկերը մի անգամ բանավոր հարձակվեց ինձ վրա՝ նրան «կոդավորող» անվանելու համար:

«Ռանդս, կոդավորիչը անմիտ մեքենա է: Կապիկ! Կոդավորողը ոչ մի կարևոր բան չի անում, բացի անպետք կոդերի ձանձրալի տողեր գրելուց: Ես կոդավորող չեմ, ես ծրագրաշարի մշակող եմ»:

Նա ճիշտ էր, նա ատում էր իմ սկզբնական խորհուրդը նոր գործադիր տնօրեններին. «Դադարեցրեք կոդ գրել»: Ոչ այն պատճառով, որ ես առաջարկում եմ, որ նրանք կոդավորողներ են, այլ ավելի շատ, քանի որ ես ակտիվորեն առաջարկում եմ, որ նրանք սկսեն անտեսել իրենց աշխատանքի ամենակարևոր մասերից մեկը՝ ծրագրային ապահովման մշակումը:

Այսպիսով, ես թարմացրել եմ իմ խորհուրդը: Եթե ​​ցանկանում եք լավ առաջնորդ լինել, կարող եք դադարեցնել կոդ գրելը, բայց...

Եղեք ճկուն: Հիշեք, թե ինչ է նշանակում լինել ինժեներ և մի դադարեք ծրագրային ապահովման մշակումից:

Հեղինակի մասին

Մայքլ Լոպը վետերան ծրագրավորող է, ով դեռ չի լքել Սիլիկոնյան հովտը: Վերջին 20 տարիների ընթացքում Մայքլն աշխատել է մի շարք նորարարական ընկերություններում՝ ներառյալ Apple-ը, Netscape-ը, Symantec-ը, Borland-ը, Palantir-ը, Pinterest-ը, ինչպես նաև մասնակցել է մի ստարտափի, որը դանդաղորեն մոռացության է մատնվել:

Աշխատանքից դուրս Մայքլը ղեկավարում է հանրահայտ բլոգ տեխնոլոգիաների և կառավարման մասին Rands կեղծանունով, որտեղ նա քննարկում է կառավարման ոլորտի գաղափարները ընթերցողների հետ, մտահոգություն է հայտնում մատը զարկերակի վրա պահելու մշտական ​​անհրաժեշտության մասին և բացատրում, որ չնայած առատաձեռն պարգևներ ապրանք ստեղծելու համար, ձեր հաջողությունը հնարավոր է միայն ձեր թիմի շնորհիվ: Բլոգը կարելի է գտնել այստեղ www.randsinrepose.com.

Մայքլն իր ընտանիքի հետ ապրում է Կալիֆորնիայի Ռեդվուդ քաղաքում: Նա միշտ ժամանակ է գտնում լեռնային հեծանիվով, հոկեյ խաղալու և կարմիր գինի խմելու համար, քանի որ առողջ լինելն ավելի կարևոր է, քան զբաղված լինելը։

» Գրքի մասին ավելի մանրամասն կարող եք գտնել այստեղ հրատարակչի կայքը
» Պահեստավորված նյութեր
» Հատված

Khabrozhiteley-ի համար 20% զեղչ՝ օգտագործելով կտրոնը - Մարդկանց կառավարում

Գրքի թղթային տարբերակի վճարումից հետո էլեկտրոնային փոստով կուղարկվի գրքի էլեկտրոնային տարբերակը:

Հ.Գ. Գրքի գնի 7%-ը կգնա համակարգչային նոր գրքերի թարգմանությանը, տպարանին հանձնված գրքերի ցանկին. այստեղ.

Source: www.habr.com

Добавить комментарий