Навіть якщо ви лише починаєте знайомитись з ІТ-індустрією, ви напевне чули терміни на кшталт “Java Junior Developer” або “Senior QA automation engineer” або “System Architect”.
Фактично ця проста градація фактично вказує на рівень досвіду спеціаліста та набір навичок (приблизний), який повинен мати той чи інший спеціаліст галузі розробки програмного забезпечення. Також рівень кваліфікації визначає обов’язки спеціаліста та рівень зарплатні, на яку він може претендувати.
Якщо ви плануєте коли-небудь стати Java-програмістом, саме з Junoir або навіть з Trainee ви розпочнете цей шлях. У цій статті ми розберемося, які навички вам знадобляться, щоб отримати роботу спеціаліста початкового рівня, що саме роботодавці очікують від програміста-початківця, та на яку зарплату може розраховувати такий розробник.
Типовий Junior Java Developer, хто ти?
Junior Java Developer — це розробник-початківець, той, хто лише недавно розпочав свою кар’єру. Як правило, він щойно завершив навчання в університеті або на курсах програмування і має ще багато чому навчитися про розробку програмного забезпечення в реальному житті. Часто він потребує допомоги тех ліда або просто розробників, що вже мають досвід роботи над проектом.
Будучи “джуном” ви можете розраховувати на багато завдань, які можуть через якийсь час здатися рутинними. Проте, ця рутина допоможе отримати якомога більше практичного досвіду.
Звичайно, конкретні обов’язки та необхідний набір навичок Junior Java Developer залежать від компанії, яка наймає. Хтось із роботодавців має вищі очікування від кандидатів початкового рівня, таких, що більше підходить спеціалістам рівня Middle в інших компаніях. Бажано уважно прочитати опис ролі, перш ніж подати заявку на роботу. Щоб переконатися, що ваші навички відповідають ролі, і ви не витрачатимете свій час і час рекрутера.
Типові навички розробника рівня Java Junior
Точні вимоги, як ми вже зазначили, залежать від спеціалізації компанії та бізнес-цілей. Але є загальні навички, необхідні для Java-джуна, які представлені в більшості пропозицій про роботу.
• Знання Core Java, включаючи синтаксис, колекції та багатопотоковість
• Досвід роботи з популярними IDE, системами контролю версій, такими службами, як GitHub або GitLab, та іншими інструментами кодування
• Тверде розуміння основ інформатики
• SQL і розуміння баз даних
• Глибоке знання хоча б однієї ОС
• Знайомство з основними фреймворками (Spring, Struts, Hibernate)
• Досвід роботи з інструментами модульного тестування (JUnit, Mockito) та засобами автоматизації (Gradle, Maven)
• Базові знання інших популярних мов програмування
• Базовий практичний досвід кодування
Якщо ви щойно закінчили навчання, деякі навички можуть бути ще свіжими у вашій голові. Але програмування – це навичка, яка вимагає постійної практики, перегляду та нових знань.
Існують чудові онлайн-ресурси, які допоможуть вам відпрацювати свої навички та покращити свої знання. Наприклад, ви можете вивчити Core Java на практиці, використовуючи JavaRush. Це інтерактивний Java курс, де окрім лекцій є понад 1200 практичних задач на Java. Найкраще те, що в цей курс вбудована миттєва перевірка правильності коду. Це важливо, якщо ви навчаєтеся самостійно.
Також ви можете переглянути теорію та навчитися працювати з фреймворками Java на Pluralsight. А ще не забудьте підписатися та моніторити спільноти StackOverflow та Reddit. На них можна навчатися, задавати питання, дізнаватися про галузеві тенденції.
Технічні навички, що я їх описував вище, необхідні для початку вашої кар’єри в програмуванні на Java. Але більшість моїх знайомих менеджерів з найму кажуть, що на молодших посадах soft-скілли цінуються більше, ніж технічні навички. Серед них:
• Здатність до швидкого навчання, допитливість
• Уміння слідувати інструкціям
• Вміння працювати в команді
• Комунікативні навички
Зазвичай ці навички здобувають під час роботи у команді над реальним проектом. Щоб отримати певну перевагу, ви можете спробувати свої сили в проектах з відкритим вихідним кодом або взяти участь в парі хакатонів та додати їх до свого резюме.
Головні обов’язки junior-розробника
Як я вже згадував, точний перелік обов’язків залежить від компанії-роботодавця та проекту, над яким ви будете працювати. Але загалом, молодший розробник Java повинен вміти наступне:
• Писати і обслуговувати Java-код
• Виправляти дрібні баги та помилки в коді
• Розбиратися у структурі та кодовій базі проекту
• Аналізувати технічні вимоги і допомагати в плануванні проекту на початкових етапах
• Робота над функціями, визначеними “старшими” розробниками
• Брати участь у тестуванні та документувати прогрес
• Оформлювати репости та іншу документацію
• Збирати відгуки користувачів
• Працювати в agile-команді
Зазвичай молодший розробник стає таким собі помічником, який зосереджується на бекенді. Ви повинні вміти визначити загальні вузькі місця та прояснювати для себе робочий процес, адаптуватись до умов роботи, встановлених у вашому проекті.
Будьте готові працювати під наглядом і активно брати участь у кожному етапі проекту.
Що отримує розробник рівня Java Junior?
Те, що очевидно всім: розробники, навіть початківці, непогано заробляють, особливо якщо порівняти із зарплатами інших спеціалістів в Україні. Згідно із статистикою DOU, початківець Java-джун може розраховувати на 1000$ на місяць. З року в рік ця цифра зростає.
Інші переваги посади можуть відрізнятися від компанії до компанії. Але загалом джуни часто беруться за роботу на кожному етапі проекту. У результаті вони отримують багато нового цікавого досвіду, який зможуть застосувати у своєму кар’єрі. Отже, якщо ви залишатиметеся відкритими, будете ставити запитання, цінуєте конструктивну критику і докладаєте зусиль, ви зможете досить швидко перейти до ролі середнього рівня.
Деякі компанії також пропонують гнучкі графіки та можливості для навчання своїм junior- розробникам. Не соромтеся користуватися цими привілеями!
Наостанок
Початок кар’єри може лякати, особливо якщо мова йде про висококонкурентний світ сучасних технологій. Але посада Java Junior Developer є дійсно цікавою і перспективною. Не засмучуйтесь, якщо не зможете знайти першу роботу відразу після закінчення курсу програмування. Натомість зосередьтеся на меті, зберігайте мотивацію, продовжуйте вчитися та практикувати свої навички, і врешті-решт ви отримаєте роботу.
Коментарі
Додати коментар