+ BLOG

Zostań Java Developerem

zjedź niżej
Zostań Java Developerem

Pierwotnie używana jako alternatywa dla języka C++, ostatecznie zrewolucjonizowała świat IT. Mowa oczywiście o technologii Java, którą gościliśmy na ostatniej „Kawie z Technologią”. Java niezmiennie bije rekordy popularności, a zapotrzebowanie na Java Developerów stale rośnie. 

 

Jak zostać Java Developerem, ekspertem w swojej dziedzinie? Na to pytanie i na wiele innych odpowiada Andrzej Kicinger – Ekspert IT.

 

 

Diverse CG: Dlaczego Java jest najpopularniejszym językiem programowania?

 

Andrzej Kicinger: To, który język programowania jest najpopularniejszy, zależy od tego, na jaki ranking spojrzymy :) Ale niewątpliwie Java jest często numerem jeden w tego typu klasyfikacjach. Szukając genezy jej popularności należy sięgnąć do historii. Dawno, dawno temu, gdy Java stawiała pierwsze kroki, niekwestionowanym liderem wśród obiektowych języków programowania był język C++. Java była jego alternatywą ze względu na zbliżoną składnię oraz wiele uproszczeń w porównaniu do tego języka. Nie trzeba było długo przekonywać programistów C++ do korzystania z Javy. Dodając do tego olbrzymie możliwości samego języka Java oraz rewolucyjne, jak na tamte czasy podejście „write once, run everywhere” mamy gotowy przepis na lawinowy wzrost popularności. I tak się stało. Obecnie, jak wynika ze statystyk dostępnych na stronach Oracle, na świecie działa ok. 45 miliardów maszyn wirtualnych Java. Potwierdza to uniwersalność technologii, olbrzymi ekosystem i jednocześnie olbrzymie zapotrzebowanie na specjalistów Java.

 

DCG: Od czego zacząć karierę Java Developera?

 

AK: Od początku :)

 

Przede wszystkim trzeba zadać sobie pytanie o samego Developera. Czy lubię myśleć abstrakcyjnie, obiektowo, analitycznie i holistycznie o aspektach zadania, nad którym pracuję? Czy lubię rozwiązywać problemy matematyczne, a co za tym idzie, szukać optymalnych rozwiązań, poznawać nowe rozwiązania technologiczne, tworzyć jak najlepsze programy, bo sprawia mi to dużą satysfakcję?

Jeżeli odpowiedziałeś pozytywnie na wszystkie pytania, to możesz rozpocząć przygodę programistyczną nie tylko z Javą :) Na początku tej przygody, zakładając znajomość warsztatu programisty oraz podstaw samego języka Java, idealnie jest móc uczestniczyć w małym lub średnim projekcie „javowym” bez dużego reżimu czasowego i móc korzystać z wiedzy i doświadczenia starszych specjalistów.

 

DCG: Jak jest z frameworkami?

 

AK: Ekosystem Java jest bardzo duży. Tym samym spektrum dostępnych bibliotek i frameworków w tej technologii jest bardzo szerokie. Wystarczy spojrzeć na ogłoszenia rekrutacyjne na stanowisko Java Developer lub zbliżone. Znajdziemy tam słowa klucze jak np. Spring, Hibernate, JUnit, J2EE, SLF4J, Storm czy Kafka, czyli od frameworków wspierających konkretne obszary (np. JUnit – testowanie), poprzez kompleksowe frameworki ułatwiające tworzenie systemów (np. Spring, J2EE), na gotowych platformach skończywszy (np. Kafka). Innymi słowy, z prawdopodobieństwem graniczącym z pewnością znajdziemy w tym ekosystemie bibliotekę lub framework z funkcjonalnościami, które są powszechnie wykorzystywane przez deweloperów.

 

DCG: Jakie umiejętności techniczne pomagają w codziennej pracy?

 

AK: Oczywiście niezbędne są umiejętności korzystania z technologii powiązanych bezpośrednio z Javą, czyli w szczególności z bibliotek i frameworków wykorzystywanych w projekcie. Bardzo pomocna jest także znajomość narzędzi używanych w procesie ciągłej integracji („Continous Integration”). Głównym narzędziem jest tu zintegrowane środowisko deweloperskie (np. Eclipse, Intellij IDEA, Netbeans). Pracę zespołową nad wspólnym kodem wspiera system kontroli kodu/wersji (np. Git). Do automatycznego budowania i testowania oprogramowania są najczęściej wykorzystywane narzędzia Maven i Gradle.

 

DCG: Kompetencje miękkie – jakie umiejętności przydają się w codziennej pracy?

 

AK: Praca deweloperska to praca zespołowa. Nie do przecenienia jest zatem umiejętność pracy w zespole :), która moim zdaniem powinna cechować się m.in. otwartością na pomysły innych członków zespołu, na ich odmienne zdanie z naciskiem na słowo „odmienne”, na konstruktywną krytykę.  Bardzo ważna jest także zdolność do wypracowywania wspólnego rozwiązania w istniejących uwarunkowaniach („bardzo dobrego, ale niekoniecznie idealnego”) czy odpowiedzialność za przyjęte ustalenia. Spoiwem współpracy jest prosta, zrozumiała, konkretna i jednocześnie proaktywna komunikacja – to umiejętność, która z pewnością przyda się w codziennej pracy.

 

DCG: Jak wygląda codzienna praca Java Developera?

 

AK: Na podstawie nazwy można byłoby wywnioskować, że Java Developer po prostu programuje („dewelopuje”) w języku Java z wykorzystaniem bibliotek i frameworków dostępnych w ekosystemie Java. Tak jest - ale nie tylko. Zanim zacznie się kodowanie - dobrą praktyką jest poświęcenie trochę czasu na zaprojektowanie sposobu realizacji funkcjonalności. Warto na tym etapie skonfrontować swoje pomysły z innymi osobami z zespołu. Jest to czas własnych przemyśleń i poddawania ich pod konstruktywną krytykę. Poza konsultacjami wewnątrz zespołowymi obowiązkowo każdego dnia odbywa się spotkanie scrumowe, dodatkowo też mogą pojawić się spotkania z innymi interesariuszami projektu. A gdy użytkownicy korzystają już z systemu, wówczas mogą pojawić się zgłoszenia błędów. W takich przypadkach Java Developer poświęca czas na odtworzenie błędu, znalezienie jego przyczyny a następnie poprawienie, czyli przede wszystkim debugowanie. Dobrą praktyką jest również dokumentowanie ważnych aspektów tworzonych funkcjonalności i dzielenie się wiedzą.

 

DCG: Z perspektywy czasu – jak oceniasz rozwój w obszarze technologii Java?  

 

AK: Technologia Java ma już prawie 30 lat, a to bardzo długa perspektywa czasowa w świecie IT. Jej podstawy, którymi są język programowania, biblioteki standardowe oraz maszyna wirtualna były przez cały ten czas i nadal są regularnie rozwijane wprowadzając raz bardziej raz mniej rewolucyjne zmiany. Do tej podstawy dodawane też były i są specjalizowane biblioteki odpowiadające na potrzeby szybko zmieniającego się świata IT. Chcę przez to powiedzieć, że Java, która od wielu, wielu lat jest dojrzałą i kluczową technologią IT, cały czas tętni życiem świata IT odpowiadając na jego różnorodne potrzeby. W przewidywalnej przyszłości na pewno nadal tak pozostanie.

TECHNOLOGIE
Zobacz również

Dane spółki: DCG Sp. z o.o., ul. Towarowa 28, 00-839 Warszawa                                                     

REGON: 141316780

NIP: 5222877930

KRS: 0001067305

Obserwuj nas:
UE