Rozhovor s vývojáři webu. Zde je návod, jak na mě udělat dojem.

Mám sedm let rozhovorů s vývojáři webu. Viděl jsem dobré, špatné a všechno mezi tím. Zde je několik z toho, co jsem se naučil hledat při rozhovorech s vývojáři webu.

Nevíte co - vědět proč.

Takže znáte každou značku v HTML 5. Skvělé. Víte, proč byste místo článku použili článek? Studovali jste se na AngularJS, ale můžete uvést dobrý případ použití v reálném světě na průměrném projektu?

Představte si, že vám mechanik nabije 20 USD navíc za výměnu oleje za nový experimentální olej, ale nedokáže vám říct, proč je pro vás tento experimentální olej lepší. Pokud nedokážete vysvětlit, proč jsou vaše technologie důležité, obávám se, že to uděláte. Musím dostat důvod, abych věřil, že víš, kdy použít - a kdy nepoužívat - technologie, které znáš, aby účinněji řešil problémy.

Vědět, proč mi také ukazuje, že jste zapojeni do probíhajících diskusí v našem odvětví. Náš průmysl neustále roste a mění se. Pokud s tím nebudete hluboce zapleteni, zůstanete pozadu. Znalost a vyjádření toho, proč jsou vaše znalosti důležité, mi ukazuje, že dnešní technologii neznáte, ale až bude k dispozici, zítra ji znáte. Tato vlastnost je stejně důležitá jako znalost technologie na prvním místě.

Staňte se králem nebo královnou základů, ne jackem všech technologií.

Mluvím s mnoha vývojáři, kteří mezi své technické dovednosti uvádějí knihovny Angular, Ember, React nebo jiné ozdobné knihovny JavaScript. To je skvělé, ale můžete proměnit ten nepořádek funkcí, který juniorský vývojář napsal, do vlastního rozšiřitelného objektu, který můžeme použít v jiných projektech, i když nemáme další prostor pro statné knihovny? Můžete kódový posuvník obrázků kódovat pomocí vanilského JavaScriptu, takže nemusíme přidávat jQuery na starší web pouze pro jednu funkci? Můžete mi říct, co je rekurze, a uvést mi příklad skutečného světa?

Pokud o to výslovně nepožádám, raději bych viděl věci jako OOP a CSS animace na životopisech, než jakýkoli rámec rámce týdne. Faktem je, že používáme pokročilé CSS a JavaScript na téměř každém projektu, na kterém pracujeme, ale možná se nemusíme obejít pomocí tohoto nového rámce před tím, než příští hlavní vydání úplně změní vše, co o něm víte. Neříkám, že nemá smysl se učit nejnovější a největší, ale před přechodem ke specializovanějším se ujistěte, že máte velmi pevnou základnu pro více použitelné technologie.

Umět řešit obchodní problémy, nejen technické problémy.

Pojďte alespoň s jedním příkladem, kde jste pomohli splnit obchodní cíl tak, jak to nikdo jiný nemohl. Dobří vývojáři sledují procesy, ale velcí vývojáři mohou identifikovat problémy s existujícími procesy. Kvalitní vývojáři poskytují klientovi řešení, které chtějí, ale skvělí vývojáři navrhují nová řešení ke snížení nákladů na projekty a časových harmonogramů. Kam jste překročili původní žádost?

Naše práce jsou nakonec dvě věci: čas a peníze. Pokud nemůžeme zachránit klienta jednu z těchto věcí, nejsme odborníci - jsme jen kódové opice. To jsou problémy, se kterými se management denně zabývá. Pokud dokážete, že nám s nimi můžete pomoci, je mnohem pravděpodobnější, že v našich týmech přistálte.

Při jejich komunikaci se zaměřte na čísla. Neříkej nám, že jsi zlepšil postup - řekni nám, kolik hodin jsi zachránil svůj tým. Neříkejte nám, že jste začali testovat některé ze svých webů A / B - řekněte nám, jak jste vylepšili konverze na místě. Na číslech záleží, ne na iniciativách. To je jazyk úspěchu.

Zjistěte, na čem musíte pracovat.

Zeptejte se pouličního bojovníka, co potřebuje vylepšit, pokud jde o jeho styl boje, a nedostanete solidní odpověď; ale zeptejte se Rhonda Rousey, co potřebuje zlepšit, a dostanete velmi specifickou, velmi skutečnou slabost, kterou si je vědoma a pracuje na opravě. Praví mistři jejich řemesel si jsou vědomi svých nedostatků a mezer v jejich znalostech. Jsou to amatéři, kteří nemají žádné slabosti.

Můžete nebo nemusíte být dotázáni na věci, se kterými bojujete; ale ať už je poskytujete nebo ne, vždy je hledáme a my je velmi dobře dokážeme najít. Když nám řeknete, jaké jsou vaše nedostatky, obvykle pro nás není překvapením. Když narazíme na někoho, kdo si není vědom nebo není ochoten přiznat své nedostatky, je to dobré znamení, že není připraven postoupit na vyšší úroveň. Ukazuje to nedostatečnou informovanost a připravenost, která se nás týká.

Nejlepší postup, jakmile víte, na čem musíte pracovat, je být k tomu upřímný a sdělit nám, co děláte pro jeho vyřešení. Je pravděpodobné, že už jsme si všimli vašeho nedostatku organizačních a komunikačních schopností. Jeho vlastnictvím se cítíme lépe jako kandidát.

Vědět, co chcete.

Jsem ohromen, kolik vývojářů, s nimiž mluvím, jen chce práci. Není to dobrá práce. Není to práce s dostatkem prostoru pro růst. Jen jakákoli práce. Je to pro mě velká červená vlajka, protože mi ukazuje, že nemáte žádnou loajalitu k této společnosti a práci, a okamžitě naskočíte lodí, protože nevíte, co chcete, dokud to neuvidíte. Dokonce mluvím s vývojáři, kteří po vyslechnutí popisu práce změní to, co chtějí. (Mimochodem to nefunguje.)

Zamyslete se nad tím, co chcete právě teď: jaká firemní kultura a výhody, jaký typ projektů, jaký typ klientů a spolupracovníků. Pokud se to neshoduje s naší společností, zjistíte, že místo práce, kterou nenávidíte, zjistíte nyní, nikoli šest měsíců. Pokud to odpovídá naší společnosti, budete mít výhodu nad lidmi, kteří nevědí, co chtějí. Na to není žádná nevýhoda.

A nepřestávejte tam. Podívejte se na možnosti kariérního postupu a zjistěte, kde chcete být, za dva roky a pět let. Neustále hledáme další vedoucí týmu nebo technického architekta, a to může ovlivnit naše rozhodnutí o najímání. A pokud chcete být jen tím nejlepším vývojářem, jaký jsme kdy viděli, je to užitečné. Pokud mi někdo řekne, že chce být nejlepším vývojářem ve společnosti do tří let, dává mi to mnohem více důvěry v jejich vášeň a dlouhověkost než někdo, kdo neví, co chce dělat. Vždy chyba na straně ambicí.