Moje vývojářské newslettery aneb kontext v distribuovaném týmu
Jedna z inspirací, kterou jsem si odnesl z knihy Turn the ship around - s leitmotivem v podobě vedení lidí - je použití kontextu. Vývojáři by měli mít vždycky kontext jinak budou svoje rozhodnutí řídit podle optimalizace lokálního maxima. Abych tuhle abstraktní formulku trochu rozklíčoval, uvedu konkrétní příklad.
Měli jsme problém se stabilitou testovacích prostředí a zároveň kluci tušili o omezení v podobě rozpočtu v podobě všeobjímající floskule — šetříme a zbytečně neutrácíme. Proto přišli s několika řešeními většinou znamenající minimálně týden vývoje a dalšího ladění. Přitom předplacení hardwaru v nákladech pár desítek dolarů ten problém řešilo permanentně navíc s realizací v podobě pár kliknutí. Bez znalosti kontextu nebyli schopni vykročit mimo rámec — šetříme a zbytečně neutrácíme. Ano šetříme, ale ne na nesprávném místě, notabene když se náklady projeví někde jinde.
Existuje jistě nepřeberně možností jak sdílet kontext v závislosti na setupu týmu a jeho rozložení. Protože máme tým 35+ lidí, který je rozložený přes více měst (v podobě Brna i časových pásem) a rád píšu, zvolil jsem formu newsletteru, který pravidelně o víkendu posílám. Vždycky se snažím
- Zrekapitulovat události minulého týdne a vypíchnout ty důležité z toho nadcházejícího.
- Pokud se objevil nějaký problém např. kiks během releasu snažím se vysvětlit jeho systémové řešení
- Pochválit jmenovitě jedince za nějaký nadstandartní přínos.
- Pokud naopak kárám, nikdy to není osobní a snažim se vypíchnout systémovou chybu a jak na ní budeme reagovat. Tady je prostor opakovat důležité atributy naší kultury na konkrétních případech, jak bych si představoval, že se budeme chovat.
- Chit chat, tipy na zajímavé knihy nebo články, které jsem četl případně připomenutí událostí (meetupy, konference), na kterých budeme vystupovat nebo na které by stálo za to vyrazit.
Abych to všechno nemusel celý týden držet v hlavě, píšu si v průběhu týdne poznámky, které potom o víkendu přepíši do uceleného textu, který rozešlu vývojovému týmu.
[Ukázky newsletterů jsou upravené pro soukromou kontrolu. Jména, interní odkazy a osobní sdělení byly vynechány.]
Ahoj,
Nejdříve začnu pochvalami.
– Díky kolegovi, který se chopil řešení produkčních i neprodukčních problémů z kanálu pro překážky ve vývoji. Díky tomu máme také nový přehled pro mikroslužby.
– Díky kolegovi za zrychlení buildu a jednotkových i integračních testů. Z 45 na 5 minut v nejlepším případě, to je skoro na olympijské zlato. Čeká nás povídání o tom, jak to zase nepokazit. Je v zájmu nás všech se nevrátit do starých kolejí.
– Díky kolegům, kteří po večerech táhnou přepis monolitu na Spring Boot.
– Díky za přehledy dostupnosti a stavu testovacích prostředí v Grafaně.
– Díky kolegovi, který se odhodlal vystoupit na konferenci.
Teď trochu vysvětlování.
Ve čtvrtek probíhá na přípravném prostředí zkouška releasu. Smyslem je ověřit, že nasazení proběhne bez problémů. Zavedli jsme to po potížích při nasazení šifrování parametrů. Do pokynů k nasazení proto nejde ve čtvrtek v pět odpoledne něco přilepit. Co neprošlo zkouškou, nejde do releasu.
A ještě pár věcí, které možná nevíte.
– Kolega připravuje prototyp pro mobily.
– Pracujeme na tom, aby přehled ukazoval, co je nasazené na kterém prostředí.
– Dokončuje se článek o přepisu aplikace.
– Pořádáme meetup v kanceláři.
– Kolegové budou přednášet o API gateway a vývoji mobilních aplikací.
– Chystá se meetup věnovaný frontendovému vývoji.
Mějte se!
Ahoj, dnes začnu nezvykle pochvalou pro vývojový tým, kterou jsme dostali na setkání v rámci skupiny. Chvilku se můžeme poplácat po zádech. Teď k problémům, které by nás měly trápit všechny.
Kontrola stavu je zelená. Chtěl bych, abychom jakýkoli jiný výsledek brali vážně a řešili ho. Hlavní odpovědnost by měl mít tým, který se stará o operativní problémy.
Máme tři zprávy o incidentech, jednu po výpadku a dvě po nasazení. [Interní odkazy vynechány.]
Po každém releasu musíme být v rozborech důslední. Náš proces není spolehlivý. Jestli problémy nezapíšeme a nepředáme příslušným týmům k opravě, bude každé nasazení hazard. Zdá se, že nejvíc trpíme rozdíly mezi prostředími. Kvůli nim jsme upravili postup pro čtvrteční zkoušku nasazení. Úkoly slučujte a testujte co nejdřív.
Ještě víc mě mrzí opakované regrese. Jedna v pátek ráno znemožnila otevřít uživatelskou záložku. Oprava se protáhla do večera, protože půl dne neprocházely testy nebo build. Když nám rozbitá větev nebo build brání opravovat další chyby, má být kanál pro blokující problémy jako úl. Jestli je kvůli nefunkční průběžné integraci zablokovaných 25 vývojářů, je její oprava nejvyšší priorita, pokud zrovna nehoří produkce. Někdo musí dostat jasnou odpovědnost, ideálně z týmu pro operativní problémy.
V pátek jsme řešili velký provoz na API gateway. Při pohledu na chybovost v monolitu mě zamrazilo. Jak v tom odlišit signál od šumu? Ukazuje to na nedostatečný vhled do provozu. Chceme proto pravidelně střídat jednoho vývojáře v týmu pro operativní problémy a zlepšit sledování běhu aplikace.
Dejte mi vědět, jestli k tomu máte připomínky.
[Osobní sdělení třetí strany vynecháno.]
Věřím v lepší zítřky, takže příští týden znovu a lépe.
Mějte se a smějte se.
Ahoj,
– Doufám, že se vám setkání mimo kancelář líbilo a každý si našel zajímavé téma, ať už při technickém vystoupení nebo při přednášce o tom, jak funguje náš byznys a proč některé věci děláme právě takhle.
– Běží den oprav. Rozpracováno máme 635 bodů. Do seznamu přibyly další úkoly pro backend, tak si snad každý něco najde a pomůže nám dosáhnout 1001 bodů. Úkoly nasazené zrychlenou cestou se počítají za dvojnásobek.
– První část mobilní aplikace se blíží k vydání. Majitelé příslušného zařízení mohou pomoct s testováním.
– Blíží se konference. Podívejte se, kam byste rádi vyrazili. Někdo už si vybral.
– Pořád nemáme obsazená všechna vývojářská místa. Bonus za doporučení je stále k dispozici. Kdo by se chtěl přesunout na jiný typ vývoje, stále má možnost.
– Kolegovi se podařilo vydat část infrastrukturního kódu jako open source. Dalším velkým cílem jsou naše testy. K dispozici je také záznam jeho vystoupení o tom, jak technologie funguje uvnitř.
– Tady je pár zajímavých článků, které jsem v poslední době četl.
– Články o práci produktového vlastníka, softwarových komponentách, postoji regulátora ke kryptoměnám a vlivu chyb v programech na výdrž baterií mobilů.
Mějte se a smějte se.
Související články
Související epizody CZ Podcastu
- #261 · Leadership
O vedení lidí a týmů.