Przejdź do treści

Certyfikacja z Javy. Egzamin OCA i Moje Wnioski

Istnieją różne spospoby na poszerzanie wiedzy w zakresie języka programowania: własna aplikacja, udział w projektach open source, kursy, szkolenia. Większość z tych metod nie wydaje jednak poświadczenia, że faktycznie umiemy co umiemy, np. projekt mogliśmy skopiować od kogoś innego, na kursie czy szkoleniu mogliśmy tylko być i odbębnić godziny… Jak zatem potwierdzić, że faktycznie umiemy to co deklarujemy?

Ps. ten artykuł wyszedł nieco długi i jest w nim zawartych sporo moich odczuć co do samego egzaminu. Jeżeli chciałbyś taką serię konkretnych artykułów o tym jak podejść do egzaminów certyfikujących, jak wygląda proces zapisania się i samego egzaminu, daj mi znać a na pewno się pojawi.


Cześć 🙂

Jeżeli chodzi o poświadczenie wiedzy w zakresie Javy to dobrą metodą jest uzyskanie certyfikatu. Aby otrzymać certyfikat trzeba zaliczyć egzamin na odpowiednim poziomie – obecnie jest to 65% poprawnych odpowiedzi. Każde podejście to koszt około 950 złotych (245$). Czy jest to najlepsza forma? Zapewne nie. Szczególnie dlatego, że sam egzamin nie pokazuje tego jak myślimy a jedynie sprawdza naszą znajomość języka i jego specyfikacji, ale o tym w dalszej części artykułu.

Osobiście mam przeświadczenie, że niewiele osób decyduje się na pozyskiwanie certyfikatów (szczególnie w świecie Javy). Wydaje mi się, że jednym z głównych powodów jest rozpowszechnione myślenie, że certyfikaty niczego nie dają. Dają czy nie dają? Do tego wrócimy jeszcze we wnioskach…

W artykule będę zamiennie używał słów certyfikat / egzamin. Oba terminy odnoszą się po prostu do podjęcia próby zaliczenia egzaminu, czy też jego konsekwencji – uzyskania certyfikatu.

W dzisiejszym artykule:


Ścieżki certyfikatów – OCA, OCP. Co to?

Certyfikacja z Javy posiada kilka możliwych ścieżek. To jaką wybierzemy jest oczywiście zależne od potrzeby, naszej lub naszych przełożonych. Należy jednak pamiętać, że nie możemy od tak wybrać dowolnego certyfikatu do zaliczenia. Niektóre z egzaminów wymagają spełnienia pewnych warunków wstępnych, np. aby podjąć próbę egzaminu OCP, wymagane jest wcześniejsze zaliczenie egzaminu OCA. Informacje na temat warunków wstępnych znajdziesz np. na platformie edukacyjnej Oracle’a, lub na stronie konkretnego egzaminu (ewentualnie wpisz nazwę egzaminu – requirements).

OCA. OCP.

  • OCA jest skrótem od Oracle Certified Associate. W świecie certyfikacji jest to egzamin identyfikujący się pod nazwą: 1Z0-808 – Java SE 8 Programmer I. Obecnie (styczeń, 2021) egzamin składa się z 70 pytań, trwa 150 minut, kosztuje 245$ i aby go zaliczyć, trzeba poprawnie odpowiedzieć na 65% pytań.
  • OCP, to skrót od Oracle Certified Professional. Jego nazwa w systemie certyfikującym to 1Z0-809 – Java SE 8 Programmer II. Na styczeń 2021 egzamin posiada takie same parametry jak OCA, z wyjątkiem liczby pytań, która wynosi 85!

Zarówno OCA jak i OCP są egzaminami weryfikujacymi naszą wiedzę w zakresie języka Java. Mają one jasno zdefiniowane bloki tematyczne wokół których możemy się spodziewać pytań. Nie jest więc tak, że zapisując się na egzamin musimy znać Javę od A do Z. Egzaminy OCA oraz OCP są chyba najbardziej wiarygodnym poświadczem wiedzy w zakresie języka.

Ścieżka certyfikacji z Javy prezentuje się w sposób pokazany na obrazku poniżej. Jest to zdjęcie z jednego z popularniejszych serwisów dających dostęp do zestawów testowych (oczywiście za odpowiednią opłatą).

Zdjęcie z serwisu enthuware.com


Przygotowania do egzaminu OCA

Cały etap przygotowań podzieliłem na trzy sekcje:

  • research,
  • teoria,
  • praktyka.

Research

Na tym etapie nie wiedziałem jeszcze nic o tym jak wygląda ścieżka certyfikacyjna. Czym są poszczególne egzaminy, czego się spodziewać, od czego zacząć, jak i na który egzamin się zapisać.

Przed podjęciem próby podejścia do egzaminu powinniśmy mieć wiedzę w tym zakresie, aby prawidłowo zaplanować co musimy umieć i co chcemy osiągnąć. No to jest raczej logiczne… Na całe szczęście nie trzeba wiedzieć aż tak dużo. Jeżeli wybierzesz standardową drogę:

  1. Musisz wiedzieć czym jest OCA, a czym OCP
  2. Jaki jest zakres zagadnień poszczególnych egzaminów
  3. Z jakich materiałów teoretycznych będziesz korzystać (wiecej o tym w sekcji Teoria)
  4. Z jakich materiałów praktycznych będziesz korzystać (wiecej o tym w sekcji Praktyka)
  5. Jak zapisać się na egzamin
  6. Jak przygotować się do egzaminu online (nie omawiam tego w tym artykule, ale jeżeli jesteś ciekawy/a, daj znać)

Jest to niby tylko 6 punktów, ale nie mam nikogo wśród znajomych którzy próbowaliby już swoich sił i mogli podzielić się doświadczeniami. Zatem musiałem każdy z tych kroków eksplorować sam. Dzięki Bogu w Internecie jest dużo informacji i znając język angielski (a podchodząc do egzaminu powinieneś znać ten język) bez problemu wynajdziesz odpowiedzi na większość swoich pytań. Jeżeli masz wśród znajomych kogoś kto posiada już certyfikat, pytaj go! Jasne, że od tego czasu mogło się już trochę pozmieniać, jednak wiedza od osoby, która przechodziła przez cały proces jest bezcenna.

Teoria

Sekcja teoretyczna, czyli zapoznanie się z materiałem obowiązującym na egzaminie. Może to być przeczytanie książki, która przygotowuje do konkretnego egzaminu. Alternatywą jest kurs online pod konkretny egzamin, jednak ja zachęcam do wybrania opcji z książką! IMO, więcej zostaje w naszej głowie gdy sami przeczytamy i przerobimy zadania!

Należy pamiętać, egzamin a programowanie na co dzień to dwa różne światy. Jakby nie patrzeć, egzamin będzie zawierać pytania pułapki i będzie walidował Twoją znajomość języka oraz jego składni. Pokusiłbym się nawet o takie stwierdzenie: egzamin stawia Cię w roli kompilatora.

Ale bez obaw! Egzaminy są już przeprowadzane od wielu lat i pomimo, że pytania się zmieniają to struktura egzaminu NIE! I dlatego na przestrzeni lat powstało kilka dobrych materiałów do nauki. Z mojej strony polecę Ci książkę, z której sam korzystałem i jestem zadowolony: OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guide: Exam 1Z0-808. Książka typowo pod egzamin. Autorzy dają wiele wskazówek odnośnie samego egzaminu, piszą na co zwracać uwagę i jakich 'pytań pułapek’ można się spodziewać. Dodatkowo, dla każdego z rozdziałów (jest ich 6), przygotowany jest zestaw pytań, sprawdzający w praktyce przeczytaną wiedzę. Dla osoby z kilkuletnim doświadczeniem książka wchodzi lekką ręką 🙂

Inną, również polecaną przez wielu lekturą jest OCA Java SE 8 Programmer I Certification Guide by Mala Gupta. Nie czytałem, więc nie mogę z czystym sercem polecić ale patrząc na recenzje, uważam, że będzie równie dobra (jeżeli czytałeś, podziel się opinią to z chęcia dodam parę wersów o tej książce).

Ps. jeżeli chcesz kupić książkę polecam niemieckiego amazona. Można chwycić używaną sztukę naprawdę tanio + mieć książke u siebie w ciągu 3-4 dni.

Praktyka

Sekcja praktyczna, czyli rozwiązywanie zadań i przykładowych egzaminów próbnych.

Dzięki temu, że kupiłem wcześniej polecaną książkę (), miałem dostęp do strony z testami. Są tam trzy próbne testy (po 60 pytań), dodatkowo są tam też testy dla każdego z poszczególnych podrozdziałów książki.

Jednak to nie wydawało mi się to wystarczające i bałem się podchodzić do egzaminu wartego 950 zł bez większej praktyki. W fazie researchu znalazłem kilka polecanych źródeł z przykładowymi testami. UWAGA! Właściwie teraz sobie z tego zdałem sprawę, że większość tych artykułów, które polecają jakieś źródła do nauki, robią to w prostym celu – chcą zarobić na linkach afiliacyjnych. IMO, to nic złego, ale trzeba o tym rzetelnie mówić. Ja też używam afiliacji, więc jeżeli masz zamiar zakupić któryś z polecanych przeze mnie materiałów to możesz wykorzystać mój link. A jeżeli masz jakieś dodatkowe pytania to po prostu zadaj w komentarzu a myślę, że znajdą się dobre dusze co dadzą odpowiedź 🙂

Najpopularniejszymi serwisami z pytaniami są

Oba są relatywnie tanie – cena około 10$ za 400-500 różnorodnych pytań. Ja zdecydowałem się na to drugie. Testy na Whizlabs są ok. Nie mam niestety porównania z Enthuware. Na pewno plusem Whizlabs jest to, że korzystamy z przeglądarki internetowej + do każdego pytania są krótkie wyjaśnienia dlaczego powinniśmy wybrać daną odpowiedź a inne odrzucić. Choć przyznam, że wyjaśnienia te czasami bywają bezwartościowe. Podam przykład, spolszczając co nieco i dodając szczyptę ironi: odpowiedź A jest błędna ponieważ nie można tak robić. Mało wyjaśniający tekst, bo bardziej mnie interesowało dlaczego tak nie można robić.. no ale takich bezsensownych odpowiedzi jest niewiele :). Po przeczytaniu wcześniej polecanej książki i przerobieniu pytań na Whizlabs, zaliczyłem egzamin na 95%, więc moim zdaniem były to wartościowe źródła.

Inne materiały nad którymi się zastanawiałem podaję poniżej. Jednak ze względu na ich cenę, postanowiłem, że wolę odpuścić.


Zapis na egzamin

TL;DR

Zapis na egzamin w styczniu 2021 w moim przypadku był uciążliwy. Pojawiło się kilka przeszkód, ale ostatecznie udało mi się zapisać… siedząc na słuchawce z konsultantem z UK (a po akcencie wnioskując to z Indii).


Znane mi opcje do zapisu były dwie:

  1. kupuję voucher/egzamin na stronie oracle, a następnie wykorzystuję go w systemie certyfikującym (pearson vue)
  2. kupuję egzamin bezpośrednio w systemie certyfikującym (pearson vue)

Pomyślałem, że skoro to egzamin Oracle’owy, to kupię egzamin ze strony Oracle’a. Problemy zaczęły się już przy uzupełnianiu profilu… pola walidujące (imię, nazwisko, adres, itp..) to porażka. Masz wszystko uzupełnione tak jak należy wciskasz ok i dostajesz błąd walidacji. Mało tego, pole walidujące numer telefonu posiada wejście na 10 cyfr (pomijając prefiks, który jest wykrywany automatycznie na podstawie wcześniej wprowadzonych pól) i jeżeli podamy mniej (a polskie numery są 9-cyfrowe), to co się dzieje? Oczywiście mamy błąd walidacji! Mocno mnie to zirytowało i aż napisałem do supportu Oracle’a, jak mam uzupełnić to dziadostwo. Rozwiązanie jakie podali: proszę wprowadzić 0 (zero) jako pierwszą cyfrę.

Przeszliśmy już przez wszystkie pola walidujące, mamy nasz voucher i kierujemy się do płatności. Na ten moment (przypominam, styczeń 2021) są tam 4 metody płatności – najwygodniejsza to oczywiście płatność kartą i tylko taką byłem zainteresowany, więc nie mogę opisać swoich wrażeń z pozostałymi. Wybrałem płatność kartą, uzupełniłem dane karty i aby móc przejść do samego zakupu, trzeba było potwierdzić kartę (lub to, że jest się jej właścicielem, nie wiem). Ogólnie to przenosi mnie na stronę banku, loguję się, widzę płatność dla oracle’a na 1 zł (!), potwierdzam płatność na telefonie. Strona banku reaguje, że wszystko się udało i za chwilę powrócę do dalszych zakupów i… BAAAM, wywaliło mnie na pustą kartę. W pasku URL widzę tylko dziwny adres jakiegoś API i w zasadzie tyle. Nic nie mogę zrobić. Na karcie widzę obciążenie na tą złotówkę (wisiało tak przez około tydzień) i tyle. Spróbowałem powtórzyć proces jeszcze 3x na innych przeglądarkach (nawet na wspaniałym IE!). Na żadnej się nie udało. Ale taki mały tip, że w zależności od przeglądarki, pola walidacyjne działały lepiej (tam, gdzie obsługa flasha była włączona, tam działało to trochę lepiej).

O łał… Trochę ponarzekałem a dopiero przechodzimy do samego systemu certyfikującego – perason vue. Postaram się bardziej streszczać.

W tym przypadku pola walidacyjne, wprowadzanie numeru telefonu, itp. było o niebo prostsze! Niestety, był ten sam problem z płatnością. Potwierdzasz płatność i dostajesz przekierowanie na pustą stronę. Byłem już zirytowany tym wszystkim i napisałem maila do supportu, jak mam się zapisać na ten egzamin, bo sam nie umiem. Powiedzieli, aby kontaktować się z ich obsługą, podali numer telefonu (numer w UK, bo nie mają wsparcia w Polsce) i godziny pracy. Dzwonię… Standardowa infolinia, jakiś głos coś Ci gada a Ty wciskasz odpowiednie przyciski. Po około 30 sekundach możesz załatwić swoją sprawę dotyczącą Oracle’a. Tzn… zostajesz łączony z jednym z konsultantów wspierających sekcje Oracle. Tutaj natomiast nie ma co narzekać, nie czeka się na to za długo (maksymalnie czekałem chyba 20 sekund).

Udało mi się zapisać na ten egzamin za 5 telefonem. Ogólnie całe flow polega na tym, że podajesz swoje dane, mówisz co chcesz, dlaczego nie możesz sam tego zrobić i oni wprowadzają wszystkie dane za Ciebie. Ale dobra… dlaczego dopiero za 5 razem?? Jeżeli coś im nie działało w systemie to się rozłączali! Przykład: przeszedłem z gościem przez całe flow, doszliśmy do płatności. Gościu mi mówi, że system akurat im leży, żebym poczekał 4-5 minut i wtedy spróbujemy. Po 5 minutach odezwał się, że dalej nie działa i żebyśmy jeszcze chwilę poczekali. Czekam, czekam… cała rozmowa trwa już 20 minut i nagle słyszę BIP, gościu się rozłączył. A tylko przypomnę, że to rozmowa z numerem z UK, która nie jest specjalnie za tania…

Btw. protip dla każdego kto musi dzwonić za granicę. Używajcie skype’a, wychodzi o wiele taniej (lub za darmo, jak się w dobrą promocję trafi).


Przebieg egzaminu

Ten artykuł i tak wyszedł spory, więc w tej sekcji postaram się pisać krótko i zwięźle.

Wszystkie przydatne informacje co do samego egzaminu można było znaleźć na stronie. Mnie ciekawił bardziej proces weryfikacji przed przystąpieniem do egzaminu i jak to przebiega. Na oficjalnych stronach nie mogłem nic znaleźć, ale jest youtube :). Poniżej podsyłam video, które przedstawia jak wygląda proces weryfikacji.

W kwesti samego egzaminu, nie było tu nic nadzwyczajnego. Dostajesz pytania i je rozwiązujesz. Egzamin posiada różne typy odpowiedzi – jednokrotnego lub wielokrotnego wyboru. Jeżeli są pytania wielokrotnego wyboru, to w pytaniu jest jasno określona ilość poprawnych odpowiedzi (nie da się zaznaczyć większej ilości odpowiedzi). Wszystkie pytania są zamknięte.

Kończąc egzamin, nasz wynik (procent poprawnych odpowiedzi), jest wyliczany od razu. A więc wciskasz Finish i za 10 sekund wiesz, czy egzamin jest zaliczony czy nie.


Podsumowanie

Egzamin zaliczyłem z wynikiem 95% – myślę, że to jest całkiem ok. Warto było wydawać te 950 zł czy nie? W moim przypadku, przenosi się to bezpośrednio na moje wynagrodzenie, więc dla mnie było warto. Dodatkowo, mam certyfikat, który dla ewentualnych przyszłych klientów już coś mówi (co prawda samym OCA może lepiej się nie chwalić, ale lepszy rydz niż nic). Oprócz kwesti biznesowych, przygotowanie do egzaminu pozwoliło powtórzyć i utrwalić podstawy.

Na sam koniec prośba do Ciebie. Chciałbyś więcej, bardziej zwięzłych i konkretnych informacji o certyfikacji?

5 7 votes
Article Rating
Tagi:
Subscribe
Powiadom o
guest
11 komentarzy
najnowszy
najstarszy oceniany
Inline Feedbacks
View all comments
Joanna
Joanna
1 rok temu

Na stronie CertView jest sekcja „Is your employer a member of the Oracle Partner Network (OPN)?” – czy przy tworzeniu konta na Oracle i PersonVue też musiałeś podać nazwę i id pracodawcy? Co, jeśli ktoś nie chce podawac? Jakoś nie mogę znaleźć informacji

Paweł
Paweł
1 rok temu

Hej, który egzamin (certyfikat) zdawałeś dokładnie ? Czy robiłeś to zdalnie z domu, czy w jakiejś lokalizacji ? Pozdrawiam i dzięki za artykuł

Paweł
Paweł
1 rok temu
Reply to  Paweł

Jeśli w jakiejś lokalizacji to napisz proszę gdzie, ja szukałem jakiś czas temu, to praktycznie brak wolnych terminów na moje okolice – Poznań, Wrocław

Paweł
Paweł
1 rok temu
Reply to  Bartosz Dąbek

Jednak zdalnie, też tak myśle, czy nie skusić się na taką opcję, bo znaleźć coś w Polsce to jest tragedia. Fajnie jakbys uwzględnił to w artykule także, to jest mega ważne moim zdaniemNie uważasz że lepszym pomysłem było by zdawanie Exam 1Z0-815 ? to jest dla java 11, myslę ze minimalnie inny materiał niż dla javy 8, nowszy certyfikat, no i 1000 zł w kieszeni jeśli i tak zamierzasz podchodzić do wersji 11 🙂 Pozdrawiam

Paweł
Paweł
1 rok temu

Bardzo przydatny artykuł

Paweł
Paweł
1 rok temu

Pamiętam jak robiłem ten certyfikat lata temu jako junior w pierwszej firmie w której pracowałem :). Java 6 OCP (wtedy nie był wymaganego pierwszego poziomu żeby robić drugi a może nawet nie było 2 poziomów, już nie pamiętam). Ze strony późniejszej kariery raczej nic nie warte, nigdy nikt o to na rozmowie nie pytał od jakiegoś czasu usunąłem już z CV bo java 6 nie wygląda już za dobrze. Sam bym nie zapłacił i obecnie nawet na koszt pracodawcy też raczej szkoda by mi było czasu, większość pytań jest z egzotycznych API i tego jak kompilator parsuje nasz kod. Natomiast… Czytaj więcej »

11
0
Would love your thoughts, please comment.x
()
x