Интервюирам уеб разработчиците. Ето как да ме впечатлите.

Имам седем години опит в интервюта с уеб разработчици. Видях доброто, лошото и всичко между тях. Ето някои неща, които научих да търся при интервюта с уеб разработчици.

Не знам само какво - знам защо.

Така че знаете всеки маркер в HTML 5. Страхотно. Знаете ли защо използвате статия вместо раздел? Вие сте изучавали в AngularJS, но можете ли да изброите добър случай на използване в реалния свят на среден проект?

Представете си един механик, който ви таксува 20 долара допълнително за смяна на масло за ново, експериментално масло, но не е в състояние да ви каже защо това експериментално масло е по-добро за вас. Ако не можете да обясните защо вашите технологии са важни, това е, което се страхувам, че ще направите. Трябва да ми бъде дадена причина да вярвам, че знаете кога да използвате - и кога да не използвате - технологиите, които познавате, за да решавате по-ефективно проблемите.

Като знам защо също ми показва, че участвате в текущите дискусии в нашата индустрия. Нашата индустрия винаги расте и се променя. Ако не сте силно ангажирани с това, ще останете назад. Като знам и гласувам защо знанията ти са от значение, ми показват, че не просто знаеш днешната технология, но ще знаеш и утрешната технология, когато стане достъпна. Тази черта е също толкова важна, колкото познаването на технологията на първо място.

Бъдете крал или кралица на основите, а не жак на всички технологии.

Разговарям с много разработчици, които изброяват Angular, Ember, React или други фантастични JavaScript библиотеки сред техническите си умения. Това е чудесно, но можете ли да превърнете тази бъркотия от функции, която младшият разработчик е написал в персонализиран разширяващ се обект, който можем да използваме в други проекти, дори и да нямаме допълнително място за здрави библиотеки? Можете ли да кодирате плъзгач на изображение с ванилов JavaScript, така че не е нужно да добавяме jQuery към по-стар уебсайт само за една част от функционалността? Можете ли да ми кажете какво е рекурсия и да ми дадете пример в реалния свят?

Освен ако не поискам специално, по-скоро виждам неща като OOP и CSS анимация в резюмета, отколкото каквато и да е рамката за аромат на седмицата. Факт е, че използваме разширени CSS и JavaScript за почти всеки проект, по който работим, но може да не се заобиколим да използваме тази нова рамка преди следващата голяма версия напълно променя всичко, което знаете за нея. Не казвам, че няма смисъл да научите най-новите и най-добрите, но се уверете, че имате много здрава основа в по-използваемите технологии, преди да преминете към по-специализирани.

Знайте как да решавате бизнес проблеми, а не само технически проблеми.

Влезте с поне един пример, в който помогнахте за постигане на бизнес цел по начин, който никой друг не можеше. Добрите разработчици следват процесите, но страхотните разработчици могат да идентифицират проблеми със съществуващите процеси. Добрите разработчици дават на клиента желаното от тях решение, но страхотните разработчици предлагат нови решения за намаляване на разходите и сроковете на проекта. Къде сте надхвърлили първоначалната заявка?

В крайна сметка нашите работни места са около две неща: време и пари. Ако не можем да спасим клиента едно от тези неща, ние не сме експерти - просто сме маймуни с код. Това са проблемите, с които ръководството се занимава ежедневно. Ако можете да покажете, че можете да ни помогнете с тях, има много по-голяма вероятност да направите място на нашите екипи.

Когато ги съобщавате, се съсредоточете върху числата. Не ни казвайте, че сте подобрили процеса - кажете ни колко часа сте запазили екипа си. Не ни казвайте, че сте започнали A / B да тествате някои от сайтовете си - кажете ни колко сте подобрили реализациите в сайта. Числата са важни, а не инициативите. Това е езикът на успеха.

Знайте над какво трябва да работите.

Попитайте уличен боец ​​какво трябва да подобри в стила си на бой и няма да получите категоричен отговор; но попитайте Ронда Руузи какво трябва да подобри и ще получите много специфична, истинска слабост, която тя осъзнава и работи по коригирането. Истинските майстори на занаята си остро съзнават своите недостатъци и пропуските в знанията си. Аматьорите, които нямат слабости

Можете или не можете да бъдете питани за неща, с които се борите; но независимо дали ги предоставяте или не, ние винаги ги търсим и сме много добри да ги намерим. Всъщност, когато ни кажете какви са вашите недостатъци, обикновено не ни е изненада. Когато срещнем някой, който или не е наясно или не желае да признае недостатъците си, това е добър знак, че не са готови да преминат на следващото ниво. Тя показва липса на информираност и подготвеност, която ни засяга.

Най-добрият начин на действие, след като разберете какво трябва да работите, е да бъдете честни за това и да ни кажете какво правите, за да го поправим. Вероятно сме вече забелязали липсата ви на организационни или комуникационни умения. Притежаването му ни кара да се чувстваме по-добре за вас като кандидат.

Знайте какво искате.

Удивен съм, колко разработчици говоря, че просто искат работа. Не е добра работа. Не е работа с достатъчно място за растеж. Просто всяка работа. Това е голям червен флаг за мен, защото ми показва, че не притежавате лоялност към тази компания и работа и ще скочи на кораба в момента, когато забележите, защото не знаете какво искате, докато не го видите. Дори говоря с разработчици, които ще променят това, което искат, след като чуят длъжностната характеристика. (Между другото, това не работи.)

Помислете какво искате в момента: каква култура и предимства на фирмата, какъв тип проекти, какъв тип клиенти и колеги. Ако не отговаря на нашата компания, сега, вместо шест месеца, ще откриете работа, която мразите. Ако това съвпада с нашата компания, ще имате предимство пред хората, които не знаят какво искат. Няма недостатък да знаем това.

И не спирайте до там Вижте възможностите за кариерния път и преценете къде искате да бъдете след две години и пет години. Винаги търсим следващия ръководител на екип или технически архитект и това може да повлияе на нашите решения за наемане. И ако просто искате да бъдете най-добрият разработчик, който сме виждали, това също е полезно. Ако някой ми каже, че иска да бъде най-добрият разработчик в компанията в рамките на три години, това ми дава много повече увереност в тяхната страст и дълголетие, отколкото някой, който не знае какво иска да прави. Винаги грешка от страна на амбицията.