Неуспешното кодиране на интервютата е най-добрият начин за успех

Снимка от rawpixel в Unsplash

Като начинаещ разработчик вече сте прекарали безброй часове, усъвършенствайки занаята си. Научихте се да кодирате или завършихте стартиращ камък и сте изградили няколко приложения. Чувствате се готова за света, но след всички часове на практикуване, отстраняване на грешки или търсене на последната бездомна скоба, тепърва ще се сблъсквате с най-трудната част - техническото интервю. Процесът на търсене на тази първа работа в бранша е може би най-трудното препятствие, пред което ще се сблъскате, но техническото интервю е страшно, без значение колко сте добри. Едно просто търсене веднага ще разкрие, че е гореща тема, но как всъщност този, който никога не е правил интервю за техническо кодиране, се справя добре? Как успява човек? Задавах си този въпрос много пъти и дори избягвах да се излагам заради страх, но бързо разбрах, че единственият изход е просто да го направя и може би трябваше да се проваля, просто да разбера как да спечеля.

През последните няколко години се обучавах как да кодирам непълно работно време благодарение на невероятни уебсайтове като FreeCodeCamp, Learn.co и The Odin Project. Препоръчвам ви всички тези ресурси, те имат страхотно съдържание и обяснения, но ми липсваше структура, за да се принудя да продължа и да завърша цялата работа, преживях много моменти, в които просто щях да се измъкна, ако се забих. В главата си се убедих, че имам нужда от интензивна програма за лично ползване и след като кандидатствах за всяка стипендия на буткемп, която успях да намеря за последната година, най-накрая получих стипендия за уеб разработка от NYC Tech Talent Pipeline и присъствах в Ню Йорк Code and Design Академия за тяхната интензивна програма за софтуерно инженерство от юни до септември тази година.

От септември започнах процеса на кандидатстване - полиране на моето портфолио, страницата на GitHub и възобновяване, като започнах първоначалните разговори, кодирането на предизвикателства, техническите интервюта и, разбира се, страховото писмо за отхвърляне. Започнах доста уверено и мотивирано, но също бях вкаменен. Бях достатъчно реалистичен и очаквах много отхвърляне в началото, което помогна. Казах си, че няма да се вълнувам прекалено много, докато не ми бъде изпратено официално предложение, което ми помогна да се концентрирам и да продължа да продължа да кандидатствам за работа.

Снимка на Lost Co на Unsplash

Въпреки че обичам да мисля, че съм доста уверен в себе си, по време на първоначалните си интервюта бях изнервен, защото техническите интервюта са съвсем нова игра на бал. Бих се изпотил, пътувам над думите си, замръзвам и забравям как да напиша цикъл в JavaScript, LOOP! СЕРИОЗНО! Имаше тонове съжаляващи моменти като този, в който се запитах защо избрах това като предпочитана от мен форма на мъчение, сигурен съм, че има и други, не толкова смущаващи начини. Едно нещо, което направих, мисля, че е супер важно: отделих време да напиша толкова, колкото си спомних след всяко интервю. Правенето на това ми помогна да разбера какво съм направил добре и как бих могъл да се подобря, за да не повторя същите грешки. Спомних си колко добре успях да формулирам как работи определен алгоритъм или как подхождам към даден проблем с псевдокод. Също така си спомням живо, когато ме попитаха защо използвам остарял синтаксис на Ruby, нямах представа как да се защитя, без да изглеждам непознат.

Дори след всички тези обиколки винаги бях нервен, това беше постоянна болка, която ме безсилно изнервяше. Чувствах се победен много пъти, но продължих да увеличавам работата си, като работя върху портфолиото си, като се ангажирах с # 100DaysOfCode и правех повече проекти, за да покажа техническите си умения, но не подобрих толкова, колкото се надявах, що се отнася до техническата оценка. След неуспешно интервю за кодиране или подаване на предизвикателство с код, рядко бих получил отзиви за моя код или код, който изпратих. Получаването на автоматично отхвърляне беше нормално, но това не ми помогна да разбера къде съм изпаднал по време на процеса. За да разбера това, направих няколко неща, за да потърся възможности за обучение, където беше дадена обратна връзка и това ми помогна изключително.

Снимка на NESA от Makers на Unsplash

Една чудесна идея, особено ако тепърва започвате, е да присъствате на хакатон. На хакатон можете бързо да изследвате нови концепции и да получите незабавна обратна връзка за вашия код и да получите по-удобно обяснение на вашия мисловен процес на другите. Отвъд това има възможности да се свържете с компании, които може да са спонсори или други лица, които варират от младши до висши разработчици в готини компании. Можете да търсите локални хакатони чрез организации като хакерство на Major League, AngelHack, търсене в Meetup и Eventbrite и като част от технологични групи, тъй като те обикновено ще споделят предстоящи събития за кодиране. Има и виртуални събития като JAMstack Hackathon, които се състояха през ноември, домакин на FreeCodeCamp

Друг чудесен вариант е да правите предизвикателства с кодиране с времево. Харесвам HackerRank, тъй като те имат редовни конкурси за време и някои работодатели използват уебсайта си, за да създадат предизвикателства за кодиране на потенциални служители. Това е чудесна практика за запознаване с видовете въпроси, които потенциално може да ви бъдат зададени, и добър начин да научите как да използвате интерфейса за оценки. Някои други сайтове като CodeChef, LeetCode и CodeWars може да имат седмични и месечни състезания, в които можете да участвате.

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

Снимка от rawpixel в Unsplash

На последно място и най-важното има няколко уебсайта, които помагат при подготовката ви за технически интервюта. Можете да получите полезна обратна връзка от инженерите и да се научите как да правите интервюта по-добре. Това ви помага да преодолеете първоначалния страх, който най-вероятно ще ви накара да замръзнете по време на истинското нещо. Обичам интервю.io и pramp, и двете са безплатни, което е невероятно предвид стойността, която предоставят. Ако искате да направите крачка напред, използвайте тези ваши умения за работа в мрежа, за да се свържете с разработчици, които правят това, което искате да направите, и се свържете с тях! Свържете се в LinkedIn или Twitter и не се страхувайте да попитате за съвет, предлагайте да им вземете кафе и да изберете мозъка им! Много разработчици са били в обувките ви веднъж и с нетърпение споделят това, което знаят, за да ви помогнат да успеете.

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

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

Снимка на Olena Sergienko на Unsplash

От това, което преживях, тези кодиращи предизвикателства и технически интервюта са необходимо зло и най-трудното препятствие за преминаване. Но хубавото е, ако сте мотивирани и отделите време да се оборудвате с правилните инструменти, те ще станат по-лесни и ще спечелите!

Дръжте инерцията си и продължавайте да изграждате нещата и не забравяйте, че има стойност при провал, дори доброто съобщение за грешка може да ви насочи към следващото ви голямо постижение!