Отже, Java, зважаючи на свою затребуваність у мобільних додатках, рішеннях для пристроїв Інтернету речей і ще в багатьох трендових нішах, тільки набирає популярності. Попит на Java-кодерів зростає, а вивчити цю мову програмування складно, але можливо завдяки масі документації та зручних інструментів (включаючи JavaRush, звичайно). Здавалося б, все чудово, а Java-девелоперам залишається лише радіти життю, дякувати долі за те, що обрали саме цей ЯП, і з оптимізмом дивитися у майбутнє. Частково так і є, але реальний світ все ж таки вносить суворі коригування, і молодим Java розробникам часто знайти роботу не дуже просто. А буває і так, що реальність б'є зелених Java джуніорів, що в рожевих мріях вже бачать себе високооплачуваними pro, в живіт чоботом високих вимог при прийомі на роботу. Наприклад, небажанням роботодавців брати людей без досвіду та великих знань купи технологій та фреймворків. Тому сьогодні поговоримо про те, чого топові роботодавці очікують від Java-джуніорів, де новачкові буде найлегше знайти роботу, і без якихось знань та умінь у працевлаштуванні не досягти успіху.
Портрет Java-джуна: чого компанії чекають від кодера-початківця?
Отже, чого компанії чекають від Java-розробника, що починає? Найчастіше очікування можуть, і будуть дуже відрізнятися в залежності від компанії. І тут багато людей з досвідом рекомендують просто поставити питання про вимоги безпосередньо рекрутеру чи HR-менеджеру організації, яка розмістила вакансію. Як правило, роботодавці не роблять секрету з того, що очікують від Java-джуна, і за якою схемою проходитиме співбесіда. Якщо ж вимірювати "середню температуру по лікарні", на базовому рівні все так чи інакше зводиться до двох речей: знання основ програмування на Java, а також здібності та готовності до навчання чи поглиблення своїх навичок. Багато експертів і досвідчених програмістів, як і наймачі, відзначають, що саме останнє найважливіше. Наймаючи Java-розробника-початківця, роботодавець зазвичай розуміє, що “джуніор” поки що має лише базове знання мови та її технологій, і йому тільки належить сформувати розуміння процесів у команді розробників та компанії в цілому. Однак при цьому майже завжди від кодера-початківця чекають, що він прикладатиме максимальні зусилля, щоб оволодіти всіма потрібними навичками якнайшвидше.
Саме тут першому плані виходять горезвісні “софт скіллз,” такі як вміння взаємодіяти всередині колективу, робоча етика, і навіть мотивація і дисципліна. Якщо ж говорити саме про технічні вимоги до Java-джуніора, то тут у більшості описів вакансій буде представлений цілий список, але деякі прогалини в резюме, формальній освіті та досвіді дуже часто можна компенсувати готовністю швидко вчитися і не показним ентузіазмом.
-
Java Core
Що стосується вищезгаданого списку вимог, то першим у ньому звичайно буде йти Java Core - знання всіх фундаментальних основ Java, що включає основні конструкції, оператори та типи даних Java, розуміння принципів об'єктно-орієнтованої мови програмування і того, як вони реалізовані в Java, а також розуміння багатопоточності та інших речей, які й становлять “ядро” цієї мови.
IDE
Підтвердивши знання “основ” майбутньому Java-джуну потрібно буде продемонструвати знання IDE (інтегрованого середовища розробки), розуміння її основних можливостей, знання відмінностей між основними IDE, а також вміння компілювати, запускати, налагоджувати та тестувати файли, рефакторити код.
-
Системи контролю версій
Знання систем контролю версій та основних принципів їх використання також потрібне навіть від малодосвідченого розробника, адже він все одно працюватиме у команді.
-
Java API
Знання основних API мови Java теж буде критично важливим на співбесіді і швидше за все допоможе отримати роботу. Найважливішими API, знати які необхідно в першу чергу, є Java Collection Framework та Java Concurrency API.
Які компанії найчастіше беруть працювати Java-джуніорів?
Якщо говорити про компанії, які найбільше активно відкривають вакансії для Java Junior девелоперів, то найчастіше це, звичайно, будуть лідери ІТ-секторів у своїх країнах. Компанії з найбільшими оборотами та високою потребою в кваліфікованих розробниках можуть дозволити собі масово наймати кодерів з невеликим досвідом або зовсім без нього на відносно невелику оплату, дозволяючи тим набиратися досвіду та знань для подальшого підвищення кар'єрними сходами в тій же компанії. Так, в Україні топ-5 ІТ-компаній, які наймають junior фахівців, виглядає так: SoftServe, EPAM, GlobalLogic, Luxoft та Infopulse. Про це йдеться у дослідженніпрофільного ресурсу DOU.UA, яке було опубліковано у квітні 2019 року. Згідно з даними дослідження, 45 топових компаній українського ІТ-сектору в 2018 році сумарно найняли 4360 співробітників-новачків (маються на увазі ІТ-фахівці всіх напрямків з досвідом роботи до 1 року або взагалі без нього). Найбільш активно з новачками співпрацювала компанія SoftServe — у 2018 році вона взяла на роботу на 400 джуніорів більше, ніж у 2017 році (1148 проти 719 співробітників). Що стосується Росії, то даних щодо кількості девелоперів, що наймаються на роботу, саме Junior рівня в цій країні при підготовці даного матеріалу нам знайти не вдалося. Проте аналіз вакансій для “джуніорів” на рекрутингових сайтах дозволяє виділити як найбільш Junior-friendly роботодавців такі компанії: G5 Entertainment, Luxoft, EPAM, Emergn, Mail.Ru Group та ALM Works.У яких містах Java-джуну найлегше знайти роботу?
У якому місті малодосвідченому Java розробнику найлегше знайти роботу — це ще одне актуальне питання як для тих, хто ще тільки вивчає Java і думає про пошук роботи в найближчому майбутньому, так і в тих, хто вже активно переглядає вакансії і розсилає свої резюме. Загалом, варіантів для працевлаштування саме для Java Junior найбільше у великих містах, де зазвичай і розміщуються офіси всіх основних ІТ-компаній. В Україні, за даними все ж таки щодо свіжого дослідження DOU.UA, зелених та необстріляних девелоперів найчастіше шукають у Києві, Харкові та у Львові, причому ці три міста продемонстрували приблизно рівні показники за кількістю взятих на роботу джуніорів у 2018 році. Також до п'ятірки міст з найбільшою кількістю вакансій входять Одеса та Дніпро. Що стосується Росії, то в цій країні топ міст де Java розробнику, в тому числі і малодосвідченому, буде знайти роботу найлегше, виглядає так: Москва, Санкт-Петербург, Новосибірськ, Нижній Новгород і Єкатеринбург. Це за данимидослідження рекрутингового порталу HeadHunter Також у цей топ увійшли Казань, Перм, Уфа, Самара та Воронеж. У Білорусі абсолютна більшість вакансій для Java розробників, у тому числі Junior, припадають на Мінськ. Також роботу можна знайти у Вітебську, Могильові та Гродно, але у цих містах вакансій, прямо скажемо, не багато.Думки експертів
Але повернемося до основної теми даного матеріалу - очікувань роботодавців при найму Java Junior розробників і того, як цим очікуванням відповідати. Декілька цитат. “Дуже поширена думка, що вимоги до Java Junior розробника з боку роботодавців вкрай високі. Це дуже сильно впливає на багатьох кандидатів під час технічної співбесіди. Думаючи, що планка вимог вища, ніж вона є насправді, вони почуваються невпевнено, перебільшують свій досвід і прикрашають навички, через що часто й не отримують роботи,” – зазначивКен Мазаїка (Ken Mazaika), CTO та співзасновник компанії Firehose. “Чесність та знання тих областей, в яких вам потрібно вдосконалюватись, лише збільшує ваші шанси на працевлаштування. Для компаній найм молодших розробників — це скоріше інвестиція з довгостроковим потенціалом, вони не очікують від неї особливої віддачі. Тому від молодших розробників вони не чекають написання якихось складних функцій і не вимагатимуть надто багато протягом перших кількох місяців,” — додав експерт. “Одна з найпоширеніших рис дійсно класних Java-програмістів, яких я брав на роботу – це те, що всі вони були схильні працювати над різними сторонніми проектами крім основної роботи. Це могли бути проекти з відкритим кодом або особисті проекти. Вони навіть не обов'язково повинні базуватися на Java,сказав Кевін Хейєн (Kevin Hayen), досвідчений Java розробник та CTO компанії Let's Be Chefs. “Часто, наймаючи Java програмістів, ми віддаємо перевагу тим, хто багато чому навчився самостійно. Часто саме такі люди захоплені програмуванням по-справжньому. Нам такі потрібні програмісти, які живуть і дихають програмним кодом. А багато технічних знань та елементів легко набуваються в процесі роботи,” – зазначив Крейг Далзил (Craig Dalziel), бізнес-менеджер компанії Pearson Frank.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ