Co dělá technický Agilní kouč

koučování, agile, xp

V jednom z předchozích článků jsem psal o typech agilních koučů. Lyssa Adkins rozlišuje tři: technical coach, business coach a agile transformation coach. Když jsem si uvědomil, že jsem ještě nikdy nepsal o technickém koučování, samotného mě to překvapilo. Začnu vlastním popisem toho, co technický kouč dělá, a v příštím článku se podíváme na to, co by měl umět.

V jednom z předchozích článků jsem psal o typech agilních koučů. Lyssa Adkins rozlišuje tři: technical coach, business coach a agile transformation coach. Když jsem si uvědomil, že jsem ještě nikdy nepsal o technickém koučování, samotného mě to překvapilo. Začnu vlastním popisem toho, co technický kouč dělá, a v příštím článku se podíváme na to, co by měl umět.

Tři cíle technického koučování

Sladění technologie s byznysem

Technologie, které používáte, by měly podporovat typ byznysu, který děláte. Kontext a cíle každého produktu jsou jiné. Několik situací pro ilustraci:

  • Jste startup a chcete rychle a efektivně prototypovat, abyste si ověřili své myšlenky.
  • Jako startup jste rychle prototypovali a vytvořili technický dluh. Teď se chcete zaměřit na dlouhodobě udržitelný vývoj. Jak projít změnou hladce?
  • Chcete okamžitý feedback od zákazníka a proto jste se rozhodli dělat release každý den. Se současnými technologiemi, stylem testování a způsobem vývoje to není možné.
  • Přecházíte na agilní vývoj. Na konci každého sprintu chcete mít produkt použitelný u zákazníka.
  • Chcete styl vývoje, který je dlouhodobě udržitelný.
  • Máte většinou konzervativní zákazníky očekávající stabilní produkt založený na ověřených technologiích.
  • Vyvíjíte software pro kritické systémy vyžadující extrémní míru stability.
  • Co řeknou zákazníci, pokud zaměníte technologii X za Y?

Technologie, praktiky i filozofie vývoje jsou v každé situaci trošku jiné. Technický Agilní kouč by vám měl být schopen pomoci. Cílem je, aby vývoj podporoval byznys v segmentu, který přináší maximální zisk. Ne aby se byznys přizpůsoboval softwaru, který se náhodou podařilo vyvinout.

Feedback managementu

Váš projekt trvá třikrát déle, než se očekávalo, a váš tým vývojářů tvrdí, že je všechno v pořádku, jen potřebuje víc času. Co je špatně? V jakém stavu je kód? Možná potřebujete někoho nezávislého, někoho zvenčí, kdo rozumí programování, technologiím i infrastruktuře. A možná někoho takového nechcete najímat na HPP - vzhledem k ceně by vám stačilo jen několik konzultací.

Kouč je tu pro tým

Technický Agilní kouč pomáhá členům vývojářských týmů. Je to kolega při párovém programování, učí psát udržovatelné testy, odhalí neuvážený přešlap v architektuře a ví, v jakém vývojovém stupni se tým právě nachází a jak jej posunout na stupeň další. Technický kouč vede workshopy, školí, mentoruje a samozřejmě koučuje.

Tým si sám zvolí nástroje. Kouč týmu pomůže (často pomocí obecných best practices), jak tyto nástroje správně používat.

Nástroje kouče

K dosažení cílů technického koučování má (kromě znalostí) technický kouč celou řadu nástrojů. Uvedu některé z těch zajímavějších.

Nemožné se stává možným

Slyšeli jste někdy větu “tohle tu máme z historických důvodů; tohle už nezměníme”? Technický Agilní kouč může ukázat, jak snadné může být něco změnit. Během jednoho dne udělá prototyp přechodu na novou technologii, rozmotá kód, na jehož refaktoring si nikdo netroufal, nebo změní část architektury (přestože tým tvrdil, že “tohle bude trvat měsíce”).

Nemožné se stává možným. Dost výmluv.

Agilní osvěta

“Agile” není jen management. Je úsměvné nutit tým doručovat přírůstek produktu každý týden, když k tomu není vybudovaná technická infrastruktura, neexistují zažité praktiky a kód není pokrytý testy. Technický Agilní kouč umí technické praktiky zasadit do frameworku Agilního vývoje tak, aby vývoj začal fungovat.

Workshopy

Kromě vzdělávacího charakteru workshopy pomáhají také jako teambuilding. Ověřeno v praxi :)

Pomáhá ostatním růst

Nic nechcete jako vývojář méně, než být donucen HR oddělením podepsat svůj rozvojový plán na dalšího půl roku, přičemž víte, že HR nemá o vývoji ani potuchy.

S technickým koučem je to jiné. Protože kouč si získává respekt vývojářů svými znalostmi, vývojáři si nechají pomoci. Kouč je provede možnostmi růstu jak po odborné, tak i po soft-skills stránce.

Trošku Scrum Master

Technický kouč rozhodně není Scrum Master. V high level pohledu má však několik společných domén. Scrum Master

  • učí, mentoruje,
  • odstraňuje překážky,
  • koučuje,
  • facilituje meetingy,
  • rozumí Agilnímu vývoji.

Tohle všechno dělá i technický kouč, jen s technickým podtextem. Například facilituje týmová code review, diskuze o architektuře a vede workshopy.

Jak se chová ideální kouč?

Servant leader

Technický kouč obvykle nepotřebuje mít oficiální autoritu. Získá si ji svými znalostmi (i když to někdy pár rozhovorů trvá).

Konstruktivní kritik

Říci “děláte to špatně” umí každý. Dobrý kouč navrhne lepší řešení.

Integrita myšlenek

Stalo se vám, že jste udělali změnu, která na jedné straně pomohla, na druhé straně způsobila nové problémy? Technický kouč by měl umět podobné případy domyslet do konce. Ve všem, co dělá, by jste měli cítit ucelený komplex praktik, metodik a práce s firemní kulturou.

Kreativní a inovativní

Některá řešení nejsou očividná a vyžadují notnou dávku kreativity.

Collaborative mindset

Kouč klade důraz na spolupráci s týmem, čímž se liší od senior vývojáře, který může pracovat i samostatně.

Disclaimer

Netvrdím, že všechny zmíněné věci dělám nebo umím :)

Sdílejte na sítích