Jak pěstovat Junior Developer

Je to už dva roky, co jsem vystudoval Lighthouse Labs jako juniorský vývojář softwaru. Během 8 týdnů intenzivního úseku jsme se dozvěděli, co je programování, učili jsme jazyky Ruby a JavaScript, představili jsme 3 nebo 4 rámce a vyvíjeli tlak na vývoj našeho vlastního projektu.

Poté jsme byli všichni pryč, abychom zahájili svou kariéru. Naštěstí pro nás jsou vývojářské dovednosti velmi žádané. Bohužel pro nás, od tohoto okamžiku jsme museli přijmout proaktivní učení, jak se vypořádat s podvodným syndromem a naučit se plavat v moři absolventů počítačových věd.

Minulý měsíc jsem se účastnil konference Polyglot nekonference. Rostoucím juniorským vývojářům byly věnovány alespoň dvě sezení. Proto si myslím, že je vhodné sdílet několik věcí, které mi pomohly.

# 1 Vyhrazený čas pro přihlášení

Jako nový pronájem jsem byl povzbuzen klást otázky. Po měsíci či dvou otázkách jsem se konečně cítil, že bych to měl vědět. Ano, myslel jsem, že bych měl být schopen vymyslet řešení sám. Už jsem nechtěl být břemenem. Nechtěl jsem vypadat hloupě, neinteligentně nebo přímo hloupě. Koneckonců, jak dlouho může trvat, než se to naučí ... Správně ?! Špatně.

Trvá to, dokud se to učíme. A některé úkoly jsou složitější než jiné.

Nakonec jsem skončil v kruhu - věřím, že dokážu problém vyřešit. Trvá mi to navždy. Jsem ve stresu. Na druhé straně starší vývojáři nechtějí mikromanage, vědí, že jsem se sám učil. A všichni skončíme celé týdny s malým až žádným pokrokem. (Nebo jsem to jen já?) V každém případě.

Řešení: Týdenní (zpočátku i dvakrát týdně) 30 minutová kontrola projektů, kde se diskutuje o směru, pokroku a úzkých místech.

Místo toho, abych se každých 30 minut pokládal otázku, mohu strávit čas zkoumáním a porozuměním problému lépe a shromažďováním svých otázek. Získání 30 minut nerozdělené pozornosti je neocenitelné. Dostávám odpovědi na své otázky a dozvím se více o organizaci, připojuji se k mentorovi. A všichni opustí setkání pocit, že jsme udělali pokrok.

# 2 Recenze kódu

Obrazový kredit: Unsplash | @tzzavandijk

Jedna věc je kódovat funkci, opravit chybu a spustit ji na mém místním počítači. Je zcela jiné zavázat nový kód do výroby.

Většina společností používá revizi kódu jako nástroj pro přenos znalostí, ale kolik jich používá jako příležitost k výuce?

Vždy budu vděčný jednomu z mých prvních mentorů, který mě donutil projít procesem kontroly kódu na každém kusu kódu, který jsem předložil jako žádost o vyžádání.

  1. Představte problém - získejte všechny na stejné stránce.
  2. Spusťte kód - ukažte všem, jak to funguje.
  3. Projděte si řešení laickými slovy - prokažte, že tomuto řešení rozumíte.
  4. Procházejte kódem - zobrazte jej v kódu.

Tento proces mě naučil myslet, než jsem kód. To mě přesvědčilo vyjádřit svá řešení z technického hlediska. Věnuji větší pozornost čitelnosti kódu.

S touto praxí lze stanovit a naučit se zásady stanovené v Čistém kodexu. Pokud je v týmu více juniorských vývojářů, navrhuji je také zapojit do tohoto procesu.

# 3 Návrhy řešení řešení

Jednou z největších stížností na konferenci byla juniorská vývojářská neschopnost vidět celkový obraz. A ve vší upřímnosti by nikdo neměl být velmi překvapen. Většina z nás na začátku je právě ohromen problémem. Pamatuji si, že jsem pracoval na prvním projektu, který se bojí, že se dokonce dotknu kódu, který napsal někdo jiný.

Řešení: Před zápisem kódu projednejte možné řešení a architekturu. Tabule. Jaký stávající kód lze upravit, co mohu sestavit a které lze použít v budoucnosti.

To, co pro mě opravdu fungovalo, bylo, když jsem měl trochu času na prototypování řešení a přijít s mým návrhem, i když později byl vyřazen. To mi umožnilo zjistit, kde je třeba zlepšit můj myšlenkový proces.

Tuto techniku ​​považuji za neuvěřitelně cennou. Cítil jsem, že nejen píšu kód a opravuji něčí chyby, ale také navrhuji a vytvářím něco nového a užitečného pro budoucnost. Vystavilo mě to, když jsem viděl větší obrázek. To je jeden z hlavních důvodů, proč jsem se dostal do vývoje softwaru - navrhovat řešení.

# 4 Vystavení více kódu

První věcí s jakýmkoli kódem je vidět, jak se to stalo dříve, a jak byl implementován k řešení podobných problémů. Vystavení kódu se tedy jeví jako přirozený návrh.

To, co mi nejvíce pomohlo, však bylo pracovat na vedlejších projektech. Přepisování kódu někdo napsal a skutečně viděl, jak byl vyvinut krok za krokem.

V pracovním prostředí se snažím vyzvednout funkci na zdánlivě odlišných částech platformy, abych viděl, jak ostatní vývojáři myslí a kódují.

# 5 Každý uvízne v hloupých chybách

Toto je jen připomínka, že nikdo z nás se nikdy nemůže přestat učit a pouze spolupráce a sdílení znalostí může přinést další rozvoj.

Po dvou letech v kódovací komunitě vím, že nalezení té nejmenší chyby může trvat dny a nemá to nic společného s vašimi chytřeji, inteligencí nebo dobrým vzhledem.

Žádat o pomoc je způsob, jak růst a neměli bychom se stydět hledat pomoc a nabízet pomoc. A jak to říká můj táta:

„Pokud jste strávili problémem dvě hodiny (dny, týdny, měsíce), nebuďte zklamaní, že jste to neudělali za hodinu (den, týden, měsíc). Buďte šťastní, že vám to netrvalo čtyři hodiny (dny, týdny, měsíce) “
Díky mému otci, který mi nesmírně pomohl udělat první kroky a ukázal mi, jak zajímavý a obohacující vývoj může být. Děkuji Voleo za to, že jste mě využil jako zbrusu nový absolvent studia Lighthouse Labs. A všichni bývalí, současní i budoucí učitelé. Váš čas a úsilí se nedocenějí.