Situace
Zápasíte s nejistotou, když jde o zavedení role Staff Engineera ve vaší organizaci? Přemýšlíte o rozsahu jeho práce a o tom, jak může skutečně násobit talent? Možná si dokonce kladete otázky ohledně jeho zapojení do programování a toho, jak využít jeho schopnosti od prvního dne. Pokud vám tyto myšlenky sedí, tento článek nabízí návod a osvětluje tato témata.
? Definujte explicitní pracovní proudy pro tuto roli
Než se ponoříme do dlouhého seznamu požadavků, udělejme krok zpět a zvažme hlavní pracovní proudy, které definují roli Staff Engineera. Podle mých zkušeností je cennější identifikovat tři až čtyři pracovní proudy fokusu, než se zahlcovat vyčerpávajícím seznamem 20 požadavků:
- ? Technické poradenství (4️⃣5️⃣%): Staff Engineer je cenným zdrojem pro technické konzultace, poskytuje expertní analýzu a provádí komplexní code review. Ideální scénář je, když engineeři přicházejí pro radu, místo aby se snažil dohlížet na všechny iniciativy. Pull, ne push. Zároveň zajistěte, aby nejkritičtější iniciativy byly dostatečně pokryty z pohledu technického designu.
- ? Technický roadmap(1️⃣5️⃣%): Představte si situaci, kdy týmy tráví svůj čas roztříštěnými, drobnými technologickými zlepšeními bez pořádného technického roadmapu, který by stakeholdeři mohli pochopit. Staff Engineer hraje klíčovou roli ve spoluvlastnictví backlogu technického roadmapu, přináší nové nápady a pomáhá s prioritizací ve své doméně (backend, front-end, data, AI a dalších). Zajišťují, aby byl vývojový čas moudře alokován na dohodnutá technická zlepšení a týmy zůstaly soustředěné na nejvíce dopadové příležitosti. Vezměte například migraci z .Net na .Net Core. Bez jasné prioritizace by tento úkol mohl trvat roky s pochybnou kvalitou. Když však komunikujeme technické priority a sladíme náš talent napříč týmy, zvládneme to během roka a zachráníme životy 🙂
- ? Učení a sdílení znalostí(2️⃣5️⃣%): Staff engineeři obvykle vedou nebo významně přispívají do horizontální komunity (backend, front-end, data, AI atd.). Nesou odpovědnost za kultivaci poutavé a obohacující komunity, která povzbuzuje engineery k aktivní účasti. Pro vytvoření kultury neustálého učení je zásadní poskytovat příležitosti k účasti na konferencích alespoň jednou ročně s očekáváním, že účastníci sdílí své klíčové poznatky s komunitou. Staff Engineeři by si také měli vyhradit čas ve svých kalendářích na osobní učení, ať už jde o čtení podnětných blog postů, knih, poslouchání podcastů nebo jiné vzdělávací zdroje. Staff Engineeři by také měli aktivně podporovat sdílení znalostí uvnitř organizace a přispívat do vyhrazených kanálů alespoň jednou týdně. Mohou sdílet nejinspirativnější blog post, na který v poslední době narazili, a rozpoutat cenné diskuse a obohatit společné znalosti.
- ? Povědomí o značce (1️⃣5️⃣%): Jak Staff Engineeři postupují ve své kariéře, mají potenciál přispívat k firemní značce z pohledu talentu. Mohou psát poutavé blog posty a vystupovat na meetupech, workshopech nebo konferencích, sdílet skutečné experimenty a autentická zlepšení. Zásadní je zachovat autenticitu a vyhýbat se povrchním marketingovým taktikám, protože engineeři jsou dostatečně vnímaví, aby rozpoznali skutečnou hodnotu. Pro inspiraci se podívejte na tento příkladný web, developers.mews.com.
⭐️ Přemýšlejte v násobícím efektu
Občas narazíme na vzorec, kdy jsou na pozici Staff Engineera povyšováni hluboce introvertní jedinci nebo, ještě hůř, jsou jejich talenty uzavřeny do osamocené iniciativy kvůli včasnému dodání. V takových případech násobící efekt stagnuje na 1. Nabízí se otázka: nezavedli jsme nechtěně antipattern? Zatímco tento přístup může zajistit dokončení projektu včas, nedokáže umožnit dlouhodobý růst firmy.
Místo toho povyšujme jedince se správnou aurou a výjimečnými komunikačními dovednostmi. Měli bychom vyzývat naše Staff Engineery, aby přemýšleli o tom, jak mohou neustále zvyšovat svůj násobící efekt a „nakazit“ ostatní vývojáře správným přístupem k technickému designu, prioritám, coding standardům a kvalitě.
❓ Staff Engineer a programování?
Vezměte například programování. I když zůstává klíčovou dovedností pro Staff Engineery, není jediným fokusem jejich role.
Jak jako Staff Engineer přistupujete k situaci s napjatým deadlinem?
- Přebíráte kontrolu, stavíte se do role „zachráním svět“ a žádáte ostatní, aby ustoupili, přepracovali a postavili zbytek sami.
- Dohlížíte na iniciativu blíže, nabízíte pomoc a párujete nebo mobujete s týmem společně.
Která z možností je dlouhodobě prospěšnější?
Alokujte konkrétní množství času na programování prototypů nebo blueprintů.
Věnujte určitý čas code review, které do 3 až 6 měsíců delegujete na úroveň týmu.
Vyhýbejte se trávení jakéhokoliv času sólovým programováním produktových funkcí.
Pojďme začít: Zavedení role staff engineera
- Nejprve si udělejte domácí úkol. Získejte solidní porozumění roli staff engineera. Vysoce doporučovaným zdrojem je „ Staff Engineer: Leadership beyond the management track“ od Willa Larsona. Jako manažer je zásadní pochopit a otevřeně komunikovat kritéria, která definují ideálního kandidáta pro tuto úroveň. Jasná kritéria povýšení jsou životně důležitá, abyste nespadli do jedné ze dvou pastí: mít nespokojené seniorní engineery, kteří hledají povýšení jinde, nebo najmout někoho, kdo splňuje požadavky své nové pozice jen částečně.
- Pečlivě zvažte, kam role staff engineera zapadá ve vaší organizační struktuře. Podle mého názoru je efektivním přístupem umístit roli staff engineera na úroveň engineering manažera s přímou reportovací linií na engineering manažery druhé úrovně. Toto nastavení umožňuje staff engineerům rozvíjet technické roadmapy pro týmy, které podporují. Buďte však ostražití vůči situacím, kdy by staff engineeři mohli mít potíže s efektivním delegováním technické práce.
- Nyní pojďme probrat to zjevné: výběr vhodných kandidátů na roli staff engineera. Je důležité si uvědomit, že ne každý dokáže tento přechod zvládnout a v této pozici vyrůst. Jasně definujte, jak vypadá úspěch v prvních třech a šesti měsících v této roli. Co se týče odhadů headcountu, dobrým pravidlem je poměr 1 staff engineer na 15 členů týmu. Technická komplexita produktu si může vyžádat úpravy, aby se dosáhlo správné rovnováhy mezi růstem a udržením kvality.
- Transparentně komunikujte důvody povýšení a poskytněte konkrétní příklady, které ukazují požadované schopnosti.
⚖️ Staff Engineer vs Senior Engineer
Otázka, která stojí za většinou debat o povýšení. Rozdíl není ve skillu, ale v rozsahu dopadu.
| Senior Engineer | Staff Engineer | |
|---|---|---|
| Dopad | Vlastní tým, vlastní problémy | Napříč týmy, násobí ostatní |
| Měří se podle | Výstupu vlastní práce | Násobícího efektu na práci ostatních |
| Kód | Produktové fičury, denně | Prototypy, blueprinty, review |
| Pozice v org | Uvnitř týmu | Na úrovni EM, reportuje na 2nd-level EM |
| Typický poměr | Několik na tým | ~1 na 15 členů týmu |

Nejčastější chyba u povýšení: senior chce staff titul, ale plánuje dělat stejnou práci s lepší vizitkou. Změna role je skutečná: od dělání k násobení. Pokud tě násobící práce ve čtyřech streamech výše neláká, je poctivější zůstat seniorem, nebo jít na manažerskou dráhu. A samotné rozhodnutí, management vs Staff+ track, je jedno z nejžádanějších témat mých mentoringových sezení.
∑ Závěr
Zavedení role Staff Engineering a vyplnění bílých míst není jednorázový posun. Především přemýšlejte v pojmech násobícího efektu, zejména ve fázi růstu firmy. Je to cesta, která se dlouhodobě vyplatí.