it-swarm-eu.dev

Kdy byste si měli říkat senior vývojář?

Možný duplikát:
Jaký je rozdíl mezi vývojáři Entry Level/Jr/Sr?

Jsem zvědavý, co starší vývojář znamená, protože definice zřejmě neznamená, co jsem si myslel. Stále vidím tyto dospívající ve věku 22-23 let, kteří si říkají senior X vývojář nebo senior Y vývojář. Pro mě musí mít senior asi 10 let zkušeností s programováním, aby se mohl nazývat „seniorem“. Viděl jsem tu spoustu těchto dospívajících (tedy otázku). Mýlím se? Proč?

298
Kev

Můžete si říkat senior, když:

  • Můžete zvládnout celý životní cyklus vývoje softwaru, od začátku do konce
  • Vedete ostatní, nebo vás ostatní hledají pro radu.
  • Můžete sami spravovat své projekty

Vývoj softwaru je na rozdíl od jiných oborů zvědavý tvor.

Někdy může čerstvý punk z vysoké školy vést kruhy kolem veteránů, kteří mají více než 20 let zkušeností. Programování je bizarní svět, ve kterém kód je král.

Někteří dosáhnou výše uvedeného za 2 roky nebo méně, jiné trvá 10 let.

433
Darknight

Když slyším „Senior Developer“, myslím na někoho, kdo zvládl programování. Myslím na člověka, který dokáže navrhnout, kódovat a otestovat systém. Umí mluvit s architekturou systému nebo s návrhem součástí. Rozumí a používají návrhové vzory. Tato osoba může předvídat úzká místa ve výkonu, ale ví, že se nemusí optimalizovat. Tato osoba bude v případě potřeby využívat asynchronní programování, řazení do fronty, ukládání do mezipaměti, protokolování, zabezpečení a vytrvalost. Na požádání mohou poskytnout podrobné vysvětlení svého výběru a výhod a nevýhod. Ve většině případů zvládli objektově orientované programování a design, nejedná se o absolutní jiné jazyky, jako je Javascript, F #, Scheme, jsou mocné a nejsou objektově orientované. Jsou zběhlí v oblasti řízení rizik a nejdůležitější ze všeho, co mohou komunikovat s výše uvedenými svými vrstevníky.

Co je mistrovství? Existuje obecně přijímaná myšlenka, že zvládnutí jakékoli dovednosti trvá 10 000 hodin opakování, než lidské tělo a mysl uchopí a internalizují dovednost. Toto je podrobně popsáno v knize Malcolma GladWella Outliers . Když původní autor hovořil o zvládnutí oboru, měl na mysli dosažení vysoce konkurenčního pole by to trvalo 10 000 hodin.

Některé příklady v Malcolm GladWell's Outliers jsou:

Mozart - jeho první koncert v mladém věku 21 let. Zpočátku se zdá být mladý, ale hudbu píše již od svých 11 let.

Beatles byly zpočátku vyhýbány. Bylo jim řečeno, že nemají hořčici a měli by zvážit jinou práci. Stráví 3 roky v Německu hraním asi 1200krát na různých místech, pokaždé v délce 5 až 8 hodin. Znovu se objevili jako Beatles, které dnes známe a milujeme.

A konečně, Bill Gates ve 20 letech vypadl z Harvardu a založil Microsoft. Pro některé by se to mohlo zdát hloupé, ale za 20 let strávil téměř polovinu svého mladého života programováním. V roce 1975 měl zkušenost, kterou měl, jen asi 50 lidí na světě. Jeho zkušenost mu umožnila předvídat budoucnost společnosti Microsoft.

Peter Norvig také diskutuje o pravidlu 10 000 hodin ve své eseji „ Naučte se programovat za deset let “.

V knize Mastery od George Leonarda jsou uvedeny velké podrobnosti o tom, jak zvládnout dovednosti. Člověk musí tuto dovednost praktikovat znovu a znovu. Čím více opakování, tím více si uvědomíte rozdíly v každém opakování. Pouze s tímto vhledem se můžete zlepšit.

Tituly softwarového průmyslu (Junior, Mid-Level a Seniors) jsou zavádějící a nekonzistentní mezi jednotlivými organizacemi. Pracoval jsem se společnostmi, které definovaly Senior vývojáře jako někoho, kdo má 5 a více let zkušeností. O kvalitě zážitku se nezmiňuje, pouze že seděli před počítačem po dobu 5 let. Při práci s těmito lidmi mnoho z nich dosud nepochopilo objektově orientované programování - přesto byli považováni za starší vývojáře.

Musí existovat lepší objektivnější způsob, jak měřit soubor dovedností softwarového inženýra. John Haugeland zveřejnil matici dovedností počítačového programátora. Je to objektivní způsob, jak změřit úroveň dovedností programátora , což je jinak ponecháno na vnitřnosti.

Při pohledu na softwarové inženýry vidím 4 úrovně dovedností: Luminary, Senior, Mid-Level a Junior.

Luminary (10+ let) je ten, kdo zvládl dovednost a rozhodl se pro zlepšení své disciplíny. Některé příklady zahrnují: Ted Neward , strýček Bob Martin , Donald Knuth, Oren Eini , Peter Norvig , Linus Torvalds . Svítidla se mění na základě vaší sady dovedností.

Senior (7 až 10+ let, úroveň 3) je ten, kdo strávil posledních 10 000 hodin programováním v určitém žánru. Existuje silné pochopení návrhových vzorů. V případě potřeby využívají asynchronní programování, řazení do fronty, ukládání do mezipaměti, protokolování, zabezpečení a vytrvalost.

Je velmi možné, že Senior nikdy nedosáhne Luminary. Svítidla se často nacházejí v mluvení a psaní. Aktivně se snaží ovlivnit jejich disciplínu.

Střední úroveň (4 až 6 let, úroveň 2) je ten, kdo rozumí každodennímu programování. Pracují nezávisle a vytvářejí robustní řešení. Musí však ještě zažít vytváření nebo údržbu velkých nebo složitých systémů. Obecně jsou vývojáři na střední úrovni skvělí s vývojem na úrovni komponent.

Junior (1 až 3 roky, úroveň 1) je ten, kdo rozumí základům programování. Mají buď titul v oboru softwarového inženýrství nebo informatiky, nebo jsou samostatně vyučováni. Jejich kód je průběžně revidován. Pokyny se týkají algoritmů, udržovatelnosti a struktury.

243
Chuck Conway

"Kdy byste si měli říkat senior vývojář?" - Když jsem začal mentorovat juniorské vývojáře.

111
duros

Všiml jsem si stejného trendu. Jednou z otázek, které se druhý den týkaly, byl senior vývojář se zkušenostmi 2-3 let přecházejícími k architektuře.

Můžete nazvat žalud stromem, ale to nemění to, co to je.

Jediným logickým závěrem je, že „senior“ znamená něco jiného:

  • relativní hodnost, jako v případě „staršího chlapa z vysoké školy“
  • chudí španělští kouzelníci, tj. chtěli dát señor
  • jižní hláskování, stejně jako v případě „starších zadních trhlin, je vytahujte do kalhot“

V těchto dnech je to jen pracovní pozice, a může nebo nemusí říkat nic o relativních zkušenostech v oboru.

23
Steven A. Lowe

chybí vám to.

Senior nic neznamená. Junior nic neznamená. Tituly nic neznamenají. Můj titul - Associate Business Systems Director. Moje zodpovědnosti - správa všech věcí od vývoje vlastního softwaru přes infrastrukturu, zabezpečení, až po webové stránky zákazníků. Moje zkušenosti s vývojem softwaru - jsem se učil. Moje síťová zkušenost - samouk. Moje celkové možnosti v oblasti IT - horší než vaše.

Moje schopnost řídit a řídit - diskutabilní, ale moje postava a osobnost mi dala práci a díky tomu jsem úspěšná.

Tituly znamenají, že nic schopnost a úsilí neznamená všechno. Nejsem nejlepší - a věřit, že by to bylo arogantní.

Zapomeňte na pověsti o titulech a prokažte svou hodnotu!

21
Steve

Myslím, že nejlepší odpověď dostala Darknight .

Cítím potřebu zdůraznit následující.

2-3 roky zkušeností s programováním (spolupráce + osobní spolu) nestačí, aby jeden viděl dostatečný počet projektů a řešil dostatečné množství problémů. Jen to nebude fungovat. Potřebuješ čas, abys nechal věci projít hlavou, přemýšlel o své zkušenosti a mentálně se posunul k vyšší úrovni myšlení. Neděje se to přes noc.

Řekl bych, že za 5-7 let praxe (opět společně + osobní) zázrak nelze očekávat. Jeden by mohl získat spoustu zkušeností s určitými jazyky a rámci, ale ještě ne skočit na novou úroveň myšlení.

Druhou věcí je celková zralost jednotlivce. Podle mého názoru se to nejprve přiblíží k 30 letům. Předtím náš mozek možná pracoval ve vyšším taktovacím kmitočtu, ale zpracovával by to nevyžádanou poštu, protože v paměti chybí dostatek dat pro zobrazení většího obrazu. Naše obecná životní zkušenost přidává něčemu jemnému, ale reálnému způsobu, jakým myslíme a pracujeme, takže k programování stejně jako k jinému druhu práce.

Můj osobní souhlas s seniorem: někdo alespoň 27 let. s nejméně 7 let praxe . Předtím bych byl osobně skeptický (ale stále otevřeně smýšlející, bude to pro mě jen důkazem).

19
user8685

Nedávno byl dobrý blogový příspěvek od Martina Fowlera. Věci, které jsem z toho vzal, jsou:

  • Nemá to nic společného s tím, jak dlouho jste pro někoho pracovali. Pracujete tři roky a stanete se senior vývojářem. Co se stane po šesti letech? Stáváte se senior senior vývojářem?

  • Starší vývojáři se na vás nepodívají ani si nemyslí, že jsou lepší než vy. To je velmi důležité. Jakmile své ego necháte v cestě, máte potíže.

  • Starší vývojáři nepřijímají vinu. Předvídají problémy a řeší je pozitivně.

  • Lidé chtějí pracovat se staršími vývojáři. To je pro mě klíč. Chci, aby lidé se mnou spolupracovali a chci, aby se mnou bavili.

  • Starší vývojáři nejsou nejchytřejší inženýři. Nepracují na nejsložitějších problémech. Jejich sada dovedností není jen o programování. Jejich komunikační dovednosti hrají stejně důležitou roli.

  • Starší vývojáři odhadují dobře.

  • Starší vývojáři se vždy starají o to, co dělají. Chápou, že nudné úkoly musí být dokončeny ve stejné kvalitě jako jiné, potenciálně zajímavější úkoly.

Jen objasnit

Dovednosti, které jsem uvedl výše, jsou tím, co věřím, že by měl mít dobrý senior softwarový inženýr kromě základních dovedností a postupů softwarového inženýrství.

14
CodeART

Pokud jste mnoho mentorovali a nejvíce vám za ně děkovali roky poté, co s vámi nejprve nesouhlasili, klidně připojte 'Senior' ke každému titulu, kterému můžete přikázat.

Do té doby je „olovo“ pravděpodobně popisnějším pojmem.

Termín „senior“ pro mě znamená vyvrcholení praktických zkušeností a moudrosti při jednání s lidmi a jejich libovolnými očekáváními. Vezměte v úvahu tento scénář:

16 programátorů v týmu, každý s přesně 1 rokem více zkušeností než ostatní. To znamená, že šestnáctý programátor má více než 16 let zkušeností. Osm z nejzkušenějších členů je tragicky zabito, když autobus zabouchne do obchodu. Byl by člověk s poloviční zkušeností nyní považován za vývojáře? Doufám, že ne, doufám, že společnost rychle nahradí prázdnotu lidmi stejného nebo více ráže, než ztratili.

Nesnáším uvést do programování termín „ travman “, ale některé platí. Termín „senior“ není něco, co bych předal někomu, kdo má méně než 15 let zkušeností, protože jde nad rámec technických znalostí.

13
Tim Post

Tento titul „Junior/Senior Developer“ považuji za nesprávný a zavádějící, protože pro to neexistuje skutečná měrná jednotka. Všichni jsme vývojáři softwaru, kteří mají méně či více praktických zkušeností. Nezkoušejte vytvořit hierarchii pro vývojáře softwaru, nemá smysl a může poškodit hlavní bod zaměření: tým pro vývoj softwaru s velkým významem.

7

Když se podíváte zpět na svou předchozí práci a uvědomíte si, co to bylo za kecy. A chápete, že jste se dostali lépe, ale je ještě mnoho kilometrů a že učení je navždy.

5
Bernard Dy

Někdy se podívám na jiné profese a přemýšlím, proč se softwarové programování standardizuje samo o sobě. Pro tuto otázku by nebylo užitečné, protože by existovala přijatelná úroveň pro získání určitých úrovní. Pak jsem přišel k poznání: „Kdo zemřel a nechal je králem?“

Všichni víme, že zkušenosti, vzdělání, certifikace a tituly jsou pro všechny ostatní, aby získali základní pohled na schopnosti programátorů. Buď víte, co děláte, nebo ne. Buď můžete cítit svůj vlastní druh, nebo nemůžete.

3
JeffO

"WHAAAT ... TEST JEDNOTKY !!!! Jsem starší programátor ... Už nemusím testovat svůj kód."

Slyšel jsem to předtím ... Tak nechává „juniorům“ opravit své chyby a otestovat je.

"Půjdeme najmout architekta ... ne, ne pana X, chceme někoho, kdo je mnohem starší, někoho, kdo již ne kóduje."

později v rozhovor:

  • takže jaké programovací jazyky znáte?

  • ahem ... Používal jsem COBOL a FORTRAN, ale nyní většinou jde o MS Word, Excel a PowerPoint.

  • Výborně ... kdy můžete začít?

Opravdu senior je jen otázkou perspektivy, titul, jak by řekl Steven. Přál bych si však, abych mohl říci, že nakonec to bude na kódu, na kterém píšete, ale bohužel v mnoha případech má oblek a kravata větší dopad, zejména když už nejste měřeni konkrétními úspěchy (kód), ale jak dobře přesvědčíte hierarchie vaší podstatnosti.

3
Newtopian

Když vám ostatní říkají starší vývojář. Neexistuje žádná definice. Jeho změny ze společnosti na společnost. V dobře usazené společnosti mají osvěžitelé menší práci a jejich křivka učení je pomalá. Ve spouštěcí společnosti může čerstvější nést mnoho povinností a naučit se mnoho věcí za kratší dobu. Zažil jsem tuto první ruku. Bohužel jsou to jen další zkušení lidé, kteří mohou vypočítat hloubku vašich znalostí, a to při pohledu na kvalitu vašeho kódu nebo práce. A jsem si jist, že každý dostane svůj titul, když vyprší čas.
A pokud nechcete změnit společnost. :-)

2
Manoj R

Je to titul jako mnoho jiných titulů. Tito „dospívající“ zde mohou mít dokonce doktorát, což nutně neznamená nic. Ale jasně jim to poskytne vyšší plat. Totéž platí pro Senior Developer nebo Senior Architect. Nebo Senior Project Manager atd.

Vzhledem k této skutečnosti je lepší, když vaši spolupracovníci nazývají „Náš Senior Developer“, než přidávat tento titul na svou vlastní kartu po mnoha letech zkušeností - což jsem udělal, když jsem měl příležitost. :-)

Kromě toho, řekl bych, že 10 let je minimum (včetně vysoké školy nebo jiného vzdělání).

2
Lukas Eder

Viděl jsem nedávno nějaké pracovní místo, které hledal absolventa CS s méně než rokem zkušeností. Zdá se mi to jako šílenství, i když je to jen titul. Za prvé, navrhuje snížení úrovně názvu. Jsem si jistý, že pár společností, které jsem viděl u těchto příspěvků, má nějaký jiný titul „super-senior“, který označuje skutečné seniory. Myslím, že to není špatná náborová strategie. Titul není všechno, ale všechny ostatní jsou stejné mezi dvěma úlohami, pravděpodobně bych si vzal ten s titulem „Master Chief Developer“.

Bod, kdy je „hlavní hlavní vývojář“ (nebo cokoli, co je na vysoké pozici, „senior“ nebo jinak), ve skutečnosti odůvodněný, i když je obtížné určit. Nemyslím si, že bychom mohli získat příliš objektivní kvantifikaci. Jako hrubý vzorec bych řekl, že by se měli jmenovat starší, pokud jsou obvykle nejlepší v místnosti a místnost obsahuje alespoň 8 profesionálních vývojářů. To by naznačovalo, že senior je v 87. percentilu minimálně. I když bych řekl, že tito devs budou pravděpodobně těmi, kteří mají nejvíce zkušeností, určitě bych neřekl, že zkušenost == „senior“, nebo dokonce blízká. Současně, i když jsem skeptický, že počet skutečných seniorů s méně než 7 nebo 8 lety musí být nesmírně malý, není nemožné, aby někdo, kdo má méně, byl mistrem.

Být 22, určitě spadám do „nepravděpodobné, že se stane mistrovskou kategorií“. I když jsem kolem některých těch „10 (nebo 30) let s 1 rokem zkušeností“ a jsem upřímně v pokušení si myslet, že jsem lepší, snažím se vzpomenout si, že tito lidé, i když vynaložili nulové úsilí, po celá desetiletí učení, stále pravděpodobně získala více znalostí než já o široké škále předmětů prostřednictvím čisté osmózy. Jednoduše neexistuje způsob, jak bych mohl vědět o nich celý životní cyklus projektu. Pracuji s jednou osobou, jejíž projekt je starší než já! Bylo by pro mě docela domýšlivé myslet si, že jsem věděl víc o udržení projektu v tomto rozsahu než on.

Druhou věcí, kterou byste měli mít na paměti, je, že pokud si začnete volat na seniora ve 22 letech, co vám bude v 32 letech? Je to pro vaši budoucnost trochu nedůvěry předpokládat, že už jste na špici. Mnoho lidí se řídí pravidlem 10 000 hodin, aby určilo, kdy je někdo odborník. V knize Malcoma Gladwella, kde je myšlenka navržena, je zcela jasné, že odborníci nejsou prostě nejlepší, ale hrají určitou roli. Nováčci nejsou v žádném případě nejhorší, ale jde o popis metody ještě více než o schopnost. Začátečníci se mohou učit šílené věci rychle, ale často mají potíže s prováděním některých nejběžnějších věcí tak rychle jako někdo, kdo je odborníkem. Odborníci mohou dělat rutinní věci s extrémní přesností a rychlostí a vědět, které věci hledat, které by mohly naznačovat problémy, ale často mají potíže reagovat na změny nebo se učit věci, které jsou mimo jejich zónu pohodlí. S ohledem na to ještě nechci být odborníkem. Chtěl bych nasáknout tolik nových informací, kolik jen budu moci, dokud se nevzdám do stabilní domény.

2
Morgan Herlocker

Mohlo by to mít něco společného s penězi.

Některé společnosti dodržují stanovený platový plán. Kvůli některým daným pravidlům vás nemohou postavit doprostřed žebříčku „Developer“. Mohou vás však dostat na dno žebříčku „Senior Developer“.

Osobně se mi zdá divné, pokud má člověk nadřízený titul přímo z vysoké školy, ale na druhé straně - koho to zajímá? Již deset let jsem „vývojářem“, a přestože po změně pracoviště mám titul „senior“, nic to neznamená. V nové doméně budu stále nováčkem - alespoň na chvíli ...

2
Vegar

Poprvé získáte práci na základě alespoň jedné relace rozhovoru, která není v přírodě „klasickým technickým pohovorem“ (tj. Diskuse o architektuře, koncepcích, designu, pohledu na společnost, zkušenosti atd.)

Moje (omezená) zkušenost je taková, že vývojáři juniorů se obvykle najímají pouze na základě výkonu ve standardní baterii otázek na pohovory, a ti starší na základě řady dalších interakcí.

1
Uri

10 let ?? Ty si musíš dělat srandu. Dobře, jak definujete 10 let? Řekněme, že někdo začal programovat ve věku 15 let, ale stal se profesionálním ve 25 letech?

Průmysl tak nefunguje. Myslím, že různé společnosti umožňují lidem, aby jim říkali Senior Dev X nebo Y kdykoli mezi 5-8 lety. Spousta seniority v organizaci nepřichází se schopností sama o sobě, má to hodně společného s iniciativou, kterou jednotlivec přijímá, a s druhem zodpovědností, které je ochotný sdílet. Většinu času se lidé s rozumnými dovednostmi a silnou motivací stanou staršími profesionály.

BTW 22 let není dospívající ;-)

1
Geek