Програмирането днес е перспективна професия, а ако сте го открили за себе си, сте се убедили, че е също толкова увличащо и интересно занимание. След като сте тук обаче, очевидно вече сте изминали и следващата стъпка – имате основните познания в областта, която сте избрали, и е време за поредния решителен момент: първото интервю за работа.
Как обаче да се подготвите? Какво да очаквате? Какви са най-големите опасности на първото интервю като програмист? Всеки, който е минал по пътя на тази професия, си е задавал тези въпроси. Ще се опитаме да сме ви максимално полезни в търсенето на отговорите им на следващите редове.
Който търси, намира
Истината е, че тук е много трудно да получите универсалните решения. Защото различните компании имат коренно различен подход в наемането на всякакви специалисти. Това важи и конкретно за избора на „джуниъри“, както на професионален жаргон се наричат начинаещите, или на стажанти.
Като начало е важно да направите разликата между двете позиции. Стажът не винаги е платен – това трябва да се уточни предварително, и обикновено има определена продължителност. След това много често стажантът бива нает и се превръща в „джуниър“. Но пък много хора пропускат първата стъпка и направо минават на следващата.
Следващото нещо, което да направите, е да изберете обявите, на които ще кандидатствате. Подходящо място за целта са социалните мрежи (и най-вече LinkedIn), специализираните платформи. Прочетете внимателно обявата, преценете дали изпълнявате изискванията ѝ и изпратете сивито си. Създаването на въпросното сиви е доста важна стъпка, на която ще се спрем подробно следващ път.
И още две малки вметки. Днес до голяма степен ролята на сиви (без да го заменя) може да играе и вашият LinkedIn профил. Ако той изглежда на ниво, шансовете ви да стигнете до етапа с интервюто растат.
А още повече растат, ако изпратите заедно със сивито си и примери от това, което умеете. Независимо дали е обучителен или хоби проект, ако добавите линк за git хранилището на добре направен проект, това рязко ще увеличи шансовете ви.
Не се подвеждайте по понякога завишените критерии на обявите. Често ще срещнете например изискването за висше образование в областта на програмирането. Ако бъдещият ви работодател одобри уменията ви, повярвайте ми, липсата на диплома е последното, което ще го спре да ви наеме.
Спокойствие и само спокойствие
И така, изпратили сте автобиографията си и получавате дългоочакваната покана за първо интервю. Оттук нататък най-ключовото е казано малко по-горе. Не спирайте да спазвате съвета на Карлсон и запазете спокойствие. Притеснението е съвсем нормално, особено когато правите нещо за първи път, но именно то може да се превърне в най-голям враг, който да ви попречи да покажете най-доброто от себе си.
Почти винаги първото интервю се води от специалист по човешките ресурси в съответната фирма. Много често на него изобщо не става дума за програмиране, целта му е по-скоро да прецени меките ви умения, доколко като човек и бъдещ професионалист представлявате интерес за фирмата. След задълбоченото бъхтане да учите програмиране… може да ви се стори странна тази идея. И все пак, създаването на софтуер винаги е силно екипен спорт, в който човешките отношения също играят важна роля за успеха.
Така че бъдете откровени. Не се опитвайте да се харесате на всяка цена, но се дръжте приятелски. В разговора ще преминете вероятно и през много от условията на бъдещата работа, които отново да проверят дали сте едни за други. Например вие може да държите на работа отвъщи, а компанията да не го предлага, или обратното.
На това интервю (а и на следващите) е напълно в реда на нещата и вие сами да зададете всички онези въпроси, които ви интересуват, във връзка с бъдещата работа. С организацията, с използваните технологии. Всичко, което е важно да знаете, за да сте сигурни (доколкото е възможно), че ще бъдете щастливи на новото място.
Няма неудобни въпроси
При всяко положение на този етап ще се отвори и може би най-щекотливият въпрос: за предлаганото заплащане и вашите очаквания в тази посока. Важно е предварително да знаете за какви условия се борите в тази посока. Разбира се, това е доста трудно, защото все още твърде малко фирми обявяват предварително заплатата за дадено работно място. А и няма как да прецените разумната сума предвид технологиите и уменията ви, защото нещата са субективни, а и няма статистика, на която да се опрете. Така или иначе е полезно да определите за себе си праг, под който не бихте могли да паднете. И още нещо: не пропускайте да обсъдите (и по възможност фиксирате) евентуалното бъдещо развитие в тази посока, ако се справяте добре.
След това интервю, по един или друг начин, идва важната стъпка, в която ще бъдат оценени уменията ви в чисто професионален план. Вариантите са два: техническо интервю, на живо или онлайн, със специалист в областта, в която ще работите, и тест, който да решите. Най-често ще се срещнете и с двете заедно, а понякога е възможно да минете и през повече етапи. Както стана дума, всяка компания има различен процес на кандидатстване, който сериозно варира.
Решаването на техническа задача е много популярен вариант да покажете какво можете. Обикновено ви се дават упражнения и проверки, тясно свързани с технологиите, с които се очаква след това да работите. По-рядко ще попаднете на чисто алгоритмични задачки, чиято цел е по-скоро да проследят начина ви на мислене.
Внимавайте не просто да решавате задачата, която ви се даде, а да го направите по възможно най-добрия начин. С коментари по кода, където са необходими, с достатъчно чист код, спазвайки всички правила в тази посока. Ако кръщавате променливите си с “a” или “promenliva“, е много вероятно това да е последната стъпка в процеса на кандидатстване.
Техничари и ейчари
И отново, най-големият враг след липсата на достатъчно умения е притеснението. Особено що се отнася до евентуалното техническо интервю. Най-често то се води от човек, който под някаква форма при евентуално наемане ще ви бъде пряк ръководител. В този смисъл, не подценявайте и тук чисто човешкото си държане, учтивостта, приветливостта. Във всяка една посока, направете така, че човекът насреща да остане с впечатлението, че с вас се работи приятно. Особено ако наистина е така.
Начините на протичане на техническото интервю са разнообразни, но често ви се задават конкретни въпроси по технологиите, които ползвате, или от други сфери на софтуерния живот. Не се притеснявайте, ако не можете да отговорите на нещо и си го признайте – дори най-опитните специалисти не са в състояние да дадат всеки отговор в толкова мащабна и динамична сфера като създаването на софтуер.
Добре е да отделите известно време за подготовка за това интервю. Всеки език за програмиране и всяка технология си има ограничен брой въпроси, които обикновено се задават на интервюта и доста сериозни списъци можете да намерите онлайн.
Работа, пари, пари
И така, след като интервютата отминават, обикновено ви се дава срок, в който ще получите отговор. Ако той е положителен, ще с него ще пристигне и конкретната оферта за бъдещата ви работа и най-важното начало е пред вас. В сфера като програмирането търсенето е толкова голямо, че винаги най-трудно е намирането на първа работа. След това, ако понатрупате малко опит във визитката си, много бързо ще започнете да получавате следващи покани.
Ако обаче отговорът е отрицателен, помолете специално хората насреща да ви дадат обратна връзка кое е това, което е наклонило везните и в каква посока да поработите, за да се справите следващия път. Какво сте сбъркали, например, в поставената задача. Отговорът може да ви е безценен за следващия опит да намерите работа.
С умения и упоритост, това ще се случи. И с повече упражнения – за някои от технологиите можете успешно да се поупражнявате с помощта на безплатния ни хостинг.
И така, на добър час, нека боговете на коденето бъдат с вас!