article-spots
article-carousel-spots
programs
Матеріали

Шлях від джуна до хорошого Java-розробника: roadmap для початківців

9 січ 2023

Олександр Решетнік вже 7 років готує Java-початківців в команді EPAM Україна. Цінними порадами та деталізованим навчальним roadmap-ом для всіх, хто робить перші кроки у розробці, Олександр ділиться в статті.

Початківець повинен мати впевнені комунікативні навички, добре володіти англійською мовою та мати впевнений фундамент для вивчення мови програмування (в нашому випадку — Java). До речі, на початку компенсувати недостатній рівень технічних навичок допоможуть саме комунікативні. Існує цікава думка про те, що рівень володіння англійською зростає повільніше, ніж покращуються технічні навички — тож головна порада це вивчати англійську постійно та наполегливо.

Базові рекомендації від Олександра:

  1. Просувайтесь по актуальній дорожній мапі для опанування Java.
  2. Перевірені книжки допоможуть вивчити базові поняття.
  3. Велике значення має постійна практика.


Скласти універсальну дорожну мапу неможливо, але погляньте на цей варіант. Звісно, з часом та досвідом мапа дещо зміниться та доповниться, але знайти власний шлях — це також один з головних челленджей для початківця.








Детальна карта Java Roadmap доступна за посиланням.







Головний секрет успішної роботи Java-розробника — це професійна література.

Для тих, хто робить перші кроки, є корисна книга Kathy Sierra, Bert Bates «Head First. Java».

Згодом можна перейти до Cay S. Horstmann «Core Java», Herbert Schildt «Java: A Beginner’s Guide» або «Java: The Complete Reference». Коли впевненість зросте, спробуйте більш складні книги.

Професіональний розробник добре знається на системах керування залежностями Gradle та Maven. Подивіться швидкий курс Maven Quick Start: A Fast Introduction to Maven by Example на Udemy та зверніться до більш ґрунтовної роботи Tim O’Brien «Maven: The Complete Reference». На LinkedIn пройдіть курс Learning Gradle та згодом переходьте до офіційної документації — Gradle Guides.

Ще одна важлива річ — робота з базами даних, що потребує знання SQL. Початківцям раджу ознайомитись з книгою Thomas Nield «Getting Started with SQL».

Отже, для навчання користуйтесь:


Важливо згадати, що будь-яка книга виходить у публікацію з запізненням, тому доволі швидко перестає відображати актуальне становище в сфері, що досліджується. Втім книги обов’язкові для читання в будь-якому стеку технологій. Книги для початківців — безпечний початок, а, з певним досвідом, переходьте до професіональної літератури та Advanced-курсів.

На чому ще варто зосередитись?

По-справжньому класний спеціаліст пише гарний код та вміє вирішувати завдання за допомогою програмування. Непогано було б розумітись на системах контролю версій (Git, SVN), REST, HTTPS, web (basic, SSO, OAuth, JWT), структурах даних, Scrum, Kanban та алгоритмах.

Також варто познайомитись із деякими суміжними спеціальностями, щоб розуміти сутність роботи колег. Що почитати:

  • «The Phoenix Project» by Gene Kim, Kevin Behr and George Spafford;
  • «Beautiful Testing: Leading Professionals Reveal How They Improve Software» by Tim Riley and Adam Goucher;
  • «Business Analysis For Dummies» by Kate McGoey and Kupe Kupersmith;
  • «100 Things Every Designer Needs to Know About People» by Susan Weinschenk;
  • «Making Things Happen: Mastering Project Management» by Scott Berkun.

Більше книг з кожного технічного напрямку зібрано в статті «Одна книга для кожного напрямку».

Навчання без практики є малоефективним, адже більша частина інформації без активного використання забувається під тиском нових даних. Ось на які ресурси для практики Олександр радить звернути увагу:


Опанувавши фундаментальні речі, рухайтесь далі по дорожній мапі та вивчайте Web frameworks, CLI tools, Databases та ін. Використовуйте кожний новий інструмент на практиці. Корисний досвід можна отримати завдяки участі у проєктах з відкритим кодом. Наприклад:


Окремо Олександр радить вже на цьому етапі заводити пет-проєкт, що відповідатиме вашому рівню знань.

Щоб стати професіоналом, початківцю доведеться витратити чимало часу та постійно підтримувати мотивацію. Але з правильною дорожною мапою та ефективною навчальною стратегією все обов'язково вийде. Пам'ятайте про важливу роль практики та постійно вдосконалюйте свої навички.

Корисні посилання

Більше про SQL, Maven, бази даних та cloud:

Про Spring Boot:

Spring Boot це популярний фреймворк, створений для спрощення розробки Java-додатків, в особливості — web програм. Він є надбудовою на фреймворці Spring та пропонує цілісний підхід до розробки production-ready додатків з мінімальними змінами.