Це — адаптований переклад статті https://blog.pragmaticengineer.com/advice-for-junior-software-engineers/, яка вийшла у серпні 2022 року.
В статті багато контексту США, але ми його залишили оскільки вважаємо цю інформацію корисною для розуміння світового ринку. В місцях статті, де специфіка в Україні відрізняється кардинально, ми робили адаптацію інформації.
Я здебільшого розповідаю про індустрію програмування для сіньйор-розробників та тімлідів. Ця стаття є відривом від цих тем.
У другій половині 2021 року ми перебували в центрі найгарячішого ринку праці в сфері ІТ за всі часи. Я писав про те, чому цей ринок досяг історичних максимумів під час «ідеального шторму». Однак, хоч й існував величезний попит на програмістів, одна річ вирізнялася.
Навіть у 2021 році ринок для джуніорів уже був холодним. Для мідлів-сіньйорів було багато можливостей працевлаштування, і значне підвищення заробітної плати було звичайним явищем. А для початківців навпаки: попит на них не зріс, як і їхня зарплата. У жовтні 2021 року я вже ділився порадами для цієї групи.
Через рік ринок і для мідл+ охолов. Де це залишає джунів?
Ринок для цієї категорії навіть гірший, ніж у 2021 році. Конкуренція набагато сильніша – курси та університети не припиняють випускати нових кандидатів на ринок – однак компанії все ще більш схильні наймати мідлів, і вони ймовірніше зможуть дозволити собі цих людей порівняно з 2021 роком, коли ринок палав.
Ця стаття є порадою, яку я можу запропонувати початківцям. Щоб було зрозуміло, я не продаю надію. Ймовірно, ми перебуваємо в середині одного з найважчих років для проникнення в сферу ІТ за останнє десятиліття. Це особливо вірно, якщо у вас немає бекграунду — наприклад, ви не закінчили відомий навчальний заклад, ви не проходили стажування у відомій технологічній компанії або у вас немає знайомих, які могли б рекомендувати вас на початкового рівня посади в компанії, в якій вони працюють.
Усі наведені нижче поради — це те, що я даю людям, які запитують мене, що вони можуть зробити, щоб максимально підвищити шанси отримати свою першу або другу роботу інженерами-програмістами.
Реальність ринку технологій 2022 року
Знайте, що отримати першу роботу цього разу буде дуже важко. Курси перебільшують те, наскільки легко отримати роботу в ІТ, адже їм потрібні учні, щоб вони заробляли гроші. Історії успіху людей, які влаштовуються на роботу без досвіду, схильні до упередження уцілілого, і зазвичай це історії багаторічної давності, коли ринок праці не був таким ворожим до початківців.
Реальність така, що ринок праці також охолоджується навіть для мідлів і вище. Компанії, що фінансуються венчурним капіталом, і навіть деякі традиційні компанії призупиняють прийом на роботу чи навіть роблять скорочення штату. Рекрутери швидше за все віддадуть пріоритет досвідченим інженерам. Те, чого ніколи раніше не траплялося: Meta не пропонувала вакансії для стажерів після випуску зі стажування.
Для джунів нинішній технологічний клімат можна сміливо порівняти з тим, наскільки важко було отримати першу роботу в технічному секторі в 2008 році – після фінансової кризи – або в 2001 році – після краху доткомів.
Подумайте про те, щоб приєднатися до групи підтримки, якщо ви ще не входите до такої. Тобто спробуйте знайти місце, де є інші люди в такій же ситуації як ви. Тут стане в нагоді бути студентом університету або курсів, оскільки у вас автоматично зʼявляється така спільнота.
Крім того, шукайте группи трейні-джунів в Discord або спільнотах невеликою платою за вступ, як-от Scrimba та інші подібні. У групі легше зрозуміти, що працює, а що ні, і отримати мотивацію.
Щоб отримати безкоштовні ресурси, шукайте спільноти Discord, такі як CS Career Hub. Приєднуйтесь до r/cscareers на Reddit, щоб дізнатися про те, як інші починають свою кар’єру.
Забудьте про звернення лише до «крутих» компаній
Цільтесь широко під час відгукування на вакансії. Не звертайтеся лише до найвідоміших компаній або компаній, які пропонують віддалене працевлаштування. Ці компанії отримають сотні, якщо не тисячі заявок на джунівські посади.
У 2018 році, коли я був рекрутером в Uber, в Амстердамі, ми відкрили стажування для студентів програмістів. Протягом трьох днів після оголошення цієї вакансії ми отримали 500 якісних заявок, тобто людей, які відмітили все, що ми просили. Нам потрібно було відібрати чотири особи. Це було у 2018 році, коли ринок не був таким складним.
Хоча я не кажу, що не потрібно подаватись до відомих компаній, просто без рекомендацій від знайомих, які там працюють, ваші шанси навіть почути відповідь будуть невеликими.
Знайдіть менші, менш відомі компанії. Це можуть бути стартапи, яким важко знайти кандитатів, і компанії, які не витрачатимуть бюджет на рекламу на дошках вакансій, таких як LinkedIn, але ви можете знайти оголошення про роботу на агрегаторах вакансій, таких як Djinni.
Звертайтеся до менш конкурентоспроможних компаній, у тому числі «несексуальних». Шукайте місцеві нетехнологічні компанії та компанії, які не пропонують повністю віддалені посади. Ці посади не тільки отримують менше претендентів: якщо вони локальні або гібридні, вони також наймуть більше джунів. Це тому, що вони можуть краще онбордити джунів, порівняно з віддаленими вакансіями.
Звертайтесь до місцевих компаній, а не лише до віддалених. Повністю віддалені ролі отримають набагато більше заявок, ніж локальні. Ці повноцінні віддалені ролі також мають набагато більше шансів найняти когось із наявним досвідом, оскільки рекрутер, швидше за все, вважатиме такого кандидата менш ризикованим.
Знайте — у вас будуть набагато кращі шанси, якщо подасте заявку в вашому місті, особливо якщо це стосується посади, де перебування в офісі — принаймні кілька днів на тиждень — є обовʼязковим. Багато досвідчених людей не подадуть заявки туди, як і люди за межами міста.
Влаштовуючись на першу чи другу роботу, ви повинні враховувати конкуренцію, яка у вас може бути, і намагатися подати документи туди, де цього буде менше.
Також звертайтеся до аутсорс компаній. Бізнес-модель аутсорсу вимагає найму та навчання джунів. Вони також дадуть досвід роботи з різними середовищами та технологіями. Такі агенції є чудовою сходинкою в галузь, і через кілька років багато людей переходять до більш високооплачуваних можливостей.
Майте на увазі, що деякі такі компанії мають погані методи роботи: якщо ви потрапили в одне з них, спробуйте рухатися далі, а не застрягати надовго.
Знайте, що майже жодна компанія не буде спонсорувати переїзд для посад початкового рівня. Для людей, які потребують переїзду, деякі компанії компенсують витрати, але вони роблять це для ключових посад, на які вони не можуть найняти на місці. Джунівські посади майже ніколи не підпадають під цю категорію.
Адаптуйте своє резюме коли відгукуєтесь
Пристосовуйте своє резюме до кожної посади, на яку ви претендуєте. Якщо у вас ще немає роботи, зробіть запит на примірник моєї книги The Tech Resume Inside Out безкоштовно. Більше 1000 людей зробили це: я схвалюю всі запити, які не є спамом.
Здобувайте свій досвід під час пошуку роботи. Кого з більшою ймовірністю візьмуть на роботу в наступні 12 місяців: того, хто витрачає 12 місяців на безперервну подачу заявок, чи того, хто витрачає час на подачу заявок, але також створив публічний пет-проект, брав участь у опенсорс проекті і успішно закрив замовлення на фріланс-біржі? Звісно візьмуть другого.
Збалансуйте час між поданням заявок та тим, щоб зробити свій профіль більш помітним.
Зробіть контрібьюшн в опенсорс нетривіальними способами. Більшість людей, з якими ви конкуруєте, матимуть у своєму резюме подібні проекти “лабораторного” рівня. Ті, хто робить внесок у популярні бібліотеки з відкритим кодом, якими користуються тисячі людей і компаній, дійсно виділяються. Шукайте такі проекти, як Awesome First PR, і досліджуйте проекти з відкритим кодом, які ви використовуєте.
Цей шлях буде важким: набагато важчим, ніж просто шукати роботу цілий день. Ось чому ви виділятиметесь з-поміж інших претендентів, якщо ви наполегливо починаєте робити контрібьюшни.
Подумайте про короткі проекти за невелику плату або безкоштовно. Якщо ви не можете влаштуватися на повний робочий день, можливо, у вас бракує досвіду створення чогось корисного для реальних користувачів.
Один зі способів отримати цей досвід, виконуючи короткострокові проекти, які не будуть окупатись, але натомість у вас буде досвід запуску вашого коду в продакшн.
Ви можете створити веб-сайт або мобільний додаток для друга або когось із ваших знайомих, кому потрібно щось подібне, але хто не може дозволити собі платити за ринковою ціною. Ви також можете створити свій власний такий додаток. Ви також можете зв’язуватися з незнайомими людьми для проектів: але це я б радив в останню чергу, оскільки є слизька межа між експлуатацією ваших навичок і часу та прокачкаю і отриманням “бойового” досвіду.
Коли я починав, під час навчання в університеті я займався декількома фрілансерськими проектами, де отримував оплату нижчу від ринкової. Пізніше ці проекти стали хорошими орієнтирами та допомогли мені виділитися серед кандидатів, у яких були лише “лабораторні” проекти чи звичайний демонстраційний CRUD додаток.
Не всі джуни отримають пропозиції про роботу. Як ви будете виділятися? Ринок програмістів для джунів у великій мірі є ринком роботодавців: це означає, що відкритих вакансій менше, ніж людей, які претендують на ці посади. Це означає, що не всім джунам вдасться отримати роботу.
Знаючи це: вам потрібно виділитися. Якими способами ви це зробите, знаючи своїх конкурентів?
Виділитися можна кількома способами:
- Бекграунд. Найочевидніший і найважчий для отримання. Випускник відомого університету, стажер у відомій компанії, рекомендації від чинних програмістів.
- Глибина. Додайте більше глибини в одній або двох областях, ніж ваші конкуренти. Ви вже стали експертом у мові програмування, прочитали «поглиблені» книги та маєте репозиторій GitHub де демонструєте поглиблене використання мови? Чи контрібьютите ви в відомі проекти — те, що роблять переважно досвідчені інженери?
- Широта. Чи є у вас досвід запуску веб-програми, мобільної програми та серверної, навіть невеликої? Більшості джунів бракує такої широти.
- Нетривіальні проекти. Чи розробляли ви щось, що виходить за межі вашої навчальної програми, яку мають усі ваші однолітки? Мені, як рекрутеру, впадає в око, коли я бачу людей, які розробили складніші рішення, на які я можу поглянути, ніж програм CRUD, які більшість джунів роблять під час навчання.
- Статті та публікації в блозі. Чи публікували ви про свій досвід і знання в академічній статті чи в професійному блозі?
- Мотивація. Чи є у вас мотивація розвиватися в цій галузі та є способи довести, що це не просто слова? Це може бути будь-що з перерахованого вище або щось інше.
- Докладання додаткових зусиль. Коли ви подаєте заявку в компанію, чи докладаєте ви якихось додаткових зусиль, яких робить мало або взагалі ніхто серед кандидатів? Наприклад, коли ви подавали заявку на стартап, який використовуватиметься як загальнодоступний API, ви створили проект, який використовує цей API, і додали його до свого резюме в першому рядку? Готовий посперечатись, що майже ніхто цього не зробив.
Наведені вище – лише деякі з багатьох способів виділитися. Докладаючи зусиль, щоб виділитися, ви можете не відразу отримати результат. Однак, не виділяючись із натовпу претендентів, ви, швидше за все, не досягнете успіху з вашими відгуками.
Не будьте прискіпливими до оферів
Якщо у вас тільки один офер: прийміть його. Ви, мабуть, читали поради про те, як на зарплатних переговорах отримати більші пропозиції та про те, наскільки гарячим є ринок технологій. Ігноруйте це: більшість із цих порад стосуються людей із великим досвідом за спиною.
Особисто я зробив доволі гарну кар’єру, зрештою досягнувши таких місць, як Skype і Uber: але, починаючи, я просто взяв першу роботу, яку зміг отримати в Угорщині, як мою першу роботу. Щодо моєї другої роботи, коли я переїхав до Великобританії, після того, як я отримав перший офер в компанії, в якій я не був у захваті працювати, інші компанії передзвонили мені, і я отримав ще дві пропозиції. Без цього я б точно прийняв той єдиний офер який я отримав.
Набагато важливіше, щоб ви почали, ніж отримати ідеальний старт. Ви можете коригувати курс по ходу.
Мені знадобилося близько 8 років, щоб пройти шлях до роботи в Uber. Під час університету я працював фрілансером, роблячи різноманітні проекти. Моя перша робота на повний робочий день була консультантом в Угорщині, потім консультантом у Великобританії, і лише тоді я отримав своє перше «велике ім’я» компанію JP Morgan у своєму резюме. Відтоді було набагато легше щоб більш відомі компанії мене помітили, і приблизно через п’ять років моєї кар’єри мені подзвонили зі Skype, яка була першою широко відомою технологічною компанією, у якій я працював.
Початок роботи в цій сфері та використання цієї першої можливості в місцевій угорській компанії було набагато важливішим для моєї кар’єри, ніж ідеальний старт. І я все ще вдячний за все, чого навчився протягом двох років у компанії під назвою Sense/Net, про яку ви, мабуть, ніколи не чули.
Якщо ви випускник курсів: знайте, що деякі курси «навчіться кодити за X місяців» недостатньо ефективні, щоб надати вам навичок, необхідних для отримання роботи програмістом. Подумайте про такі навчальні програми, які займають набагато більше часу, ніж курс.
Пам’ятка рекрутерам
Для рекрутерів та інженерів, які читають цю статтю: будьте в курсі поточної динаміки ринку. У той час як новоспеченому програмісту дуже важко знайти першу роботу, рекрутеру найпростіше найняти дуже мотивованих і талановитих джунів.
Якщо у вас є кілька вакантних місць, подумайте про відкриття принаймні кількох нових посад для джунів, як тільки у вас буде достатньо сіньйорів які б підтримували цих людей.
Ви заощадите бюджет, найнявши початківців, принесете ентузіазм і зможете змінити карʼєрну траєкторію для кожного такого найманого працівника.
Якщо ви наймаєте джунів, ознайомтеся з моєю порадою щодо розвитку джунівських команд та онбордингу інженерів до вашої команди.
Знайте, що це буде складно
Потрапити в індустрію дуже важко. Більшість статей про те, як я отримав 5 пропозицій за 2 тижні, схильні до упередження уцілілого й не відображають реальності більшості людей або того, наскільки складно розпочати роботу.
Як промінь надії: як тільки у вас вдасться, з кожним роком вам ставатиме легше.
Успіхів, адже це особливо складний час, щоб розпочати роботу в галузі.
Після того, як ви отримаєте свою першу роботу, ви можете почитати поради самому собі, якби я був програмістом-початківцем.