Jak zaliczyłem egzamin Oracle Certified Associate Java Programmer I?

Ładnych parę miesięcy temu, przygotowywałem się do zaliczenia pierwszego poważnego egzaminu programistycznego. Nie był to mój pierwszy egzamin certyfikacyjny, ale pierwszy stricte związany z konkretną technologią developerską. Jak już mieliście okazję przeczytać, wcześniej zostałem certyfikowanym testerem ISTQB. Oba testy oraz forma ich przeprowadzenia znacząco się jednak różniły. Egzamin organizowany przez Oracle był znacznie trudniejszy do zaliczenia, a co za tym idzie również i przygotowania wymagały nieco więcej czasu i samozaparcia. Mimo tylu przeciwwskazań udało mi się jednak zakończyć ten etap z sukcesem.

Przygotowujesz się do certyfikacji OCAJP? Zajrzyj do mojego darmowego kursu #ElementarzJava, gdzie omawiam wszystkie zagadnienia jakie spotkasz podczas egzaminu!

Pewnie zastanawiasz się skąd nagle pomysł na zaliczanie testu certyfikacyjnego z Javy? Geneza tego jest bardzo prosta. Będąc studentem informatyki, miałem okazję zupełnie za darmo wziąć udział w szkoleniu oraz później przystąpić do egzaminu Oracle. Wszystko to było realizowane w ramach Unijnego programu rozwoju kompetencji studentów na kierunkach ścisłych. To jednak nie jedyna możliwość, jaką miałem. Na Uniwersytecie Jagiellońskim organizowany jest również inny projekt, gdzie można za darmo podejść do wybranych egzaminów certyfikacyjnych. Różnica jest tylko taka, że wtedy nie miałbym możliwości skorzystania z dedykowanego szkolenia, a uczyć musiałbym się sam. Jak widać, studia przydają się nie tylko do tego, aby pouczyć się matematyki studiując informatykę, ale i w wielu praktycznych przypadkach. Komercyjne podejście do szkolenia i certyfikatu to koszt kilku tysięcy złotych. Grzechem więc byłoby nie skorzystać z nadarzającej się okazji.

Przygotowania

Przed przystąpieniem do jakiegokolwiek testu pierwsza rzecz, jaka nasuwa się na myśl to pytanie, jak się do niego przygotować? Ja z racji tego, że miałem możliwość uczestniczenia w szkoleniu, nie zaprzątałem sobie tym głowy. To niestety był błąd, który bardzo szybko zrozumiałem. Przychodząc na zajęcia, dobrze jest wcześniej zapoznać się z omawianym materiałem, sylabusem udostępnianym przez Oracla oraz przykładowymi zadaniami egzaminacyjnymi. Większość pytań, na jakie trafia się podczas testu certyfikacyjnego, jest z reguły prosta, ale nieco podchwytliwa. Jeśli mamy czterogodzinne zajęcia, które odbywają się pięć dni z rzędu i na tym koniec, to tak naprawdę podczas tych spotkań nie ma czasu na naukę. Trzeba już wcześniej mieć przygotowane zagadnienia i elementy, których się nie rozumie. Jest to znakomita okazja, aby prowadzący wyjaśnił to, z czym ma się największy problem, a co samemu czasami trudno ogarnąć.

Co ciekawe samo Oracle poza sylabusem, gdzie podane są tematy, jakie mogą pojawić się na egzaminie, nie udostępnia żadnych innych materiałów. Nie znajdziemy więc oficjalnych pytań, testów certyfikacyjnych czy jakichkolwiek innych artykułów sygnowanych logo Amerykańskiej firmy. Rynek oczywiście nie znosi próżni i jak się dobrze rozejrzycie,  znajdziecie mnóstwo różnych książek, arkuszy testowych czy testów online z pytaniami podobnymi do tych, jakie padają podczas egzaminu OCAJP.

Ja podczas nauki, korzystałem z dwóch książek – „OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guide” oraz „OCA Java SE 8 Programmer I Certification Guide”. Są one dostępne w anglojęzycznej wersji językowej, gdyż właśnie w takim języku przeprowadzany jest egzamin. Pierwsza pozycja dodatkowo umożliwia rozwiązywanie testów online w formie quizu. Oczywiście nie ma żadnego problemu, aby zamówić je w Polsce. Znajdziecie je w ofercie wielu naszych rodzimych księgarni.

Obie książki składają się z przykładowych pytań egzaminacyjnych zgrupowanych według zagadnień tematycznych opisanych w sylabusie dostarczonym przez Oracle. Na początku każdego rozdziału został przygotowany opis poruszanych problemów oraz szereg wyjaśnień przedstawiających schemat działania języka Java. Dalej znajdziecie pytania egzaminacyjne, wraz z kluczem oraz krótkim wyjaśnieniem, dlaczego to właśnie te, a nie inne odpowiedzi są poprawne.

Fot. Alberto G., CC 2.0.

Egzamin

Na egzaminie wszystkie pytania są zamknięte i co najważniejsze są one wielokrotnego wyboru. Aby zadanie zostało zaliczone, trzeba zaznaczyć wszystkie poprawne odpowiedzi. Ich liczba przy każdym pytaniu jest podana do wiadomości zdającego. Jeśli zaznaczysz jakąkolwiek złą odpowiedź bądź nie zaznaczysz wszystkich poprawnych, pytanie nie jest zaliczane. Egzamin uznaje się za zdany po zdobyciu 65% możliwych do uzyskania punktów. Czas trwania to 150 minut, podczas których musimy zmierzyć się z 70 pytaniami. Co ciekawe z tej puli 10 pytań (nie wiadomo które) to pytania testowe i nie są one zaliczane do ogólnego wyniku. Koszt przystąpienia do egzaminu to 245 USD (dokładne ceny w PLN podane są przez ośrodki egzaminacyjne, a kwota ta jest zazwyczaj ustalana po stałym kursie walutowym, stosowanym przez daną firmę certyfikacyjną). Wynik otrzymujemy na maila po upływie 30 minut od zakończonego podejścia. Po uzyskaniu rezultatu nie mamy wglądu do pytań, a jedynie opis zagadnień, które powinniśmy jeszcze powtórzyć. Gdyby podejście nie zakończyło się sukcesem, nie możemy liczyć na żaden zwrot zapłaconej kwoty ani też inne dodatkowe wyjaśnienia odnośnie popełnionych błędów.

Egzamin OCAJP jest organizowany przez certyfikowane ośrodki i certyfikowanych egzaminatorów. Może on się odbywać w specjalnie przystosowanej sali znajdującej się w ośrodku egzaminacyjnym lub przy większej liczbie osób, w pomieszczeniu danej firmy bądź też uczelni. Wszystko odbywa się na dostarczonych przez firmę egzaminacyjną, komputerach, gdzie uruchamiane jest specjalne oprogramowanie. Cały przebieg testu jest nagrywany, a na salę nie można wnieść niczego oprócz dwóch dokumentów tożsamości i butelki wody. Dostępna jest również jedna kartka A4 przeznaczona na podręczne notatki i obliczenia. Ją również otrzymasz na miejscu.

Większość pytań, jeśli nie wszystkie polega na zabawie w kompilator. Otrzymujemy fragment kodu, który trzeba w głowie skompilować i uruchomić, a następnie zaznaczyć, jaki będzie rezultat jego wykonania. Trzeba się mieć na baczności, ponieważ jest wiele różnych podchwytliwych konstrukcji. Za niedługo pojawi się u mnie na blogu seria materiałów na temat Javy, to zobaczysz o co chodzi. Jeśli miałbym oceniać trudność całego testu, to powiem tak – na pewno nie zgodzę się z powszechną opinią, że można go zaliczyć przychodząc „z ulicy”, ale też nie podpiszę się pod tym, że jest on trudny. Trzeba pewne rzeczy opanować, poświęcić trochę czasu na naukę i nawet jak się czegoś nie wie to i tak jesteśmy w stanie odrzucić błędne odpowiedzi i z tych, co zostaną, „trafić” te poprawne. Próg zaliczenia 65%, może wydawać się wysoki, ale wbrew pozorom nie jest tak źle. W internecie krążą różne memy o „cudownych” nastolatkach, którzy otrzymali maksymalną liczbę punktów, podchodząc do tego certyfikatu. Osobiście nie polecam takiego lekceważącego podejścia, nawet jeśli to nie Ty opłacasz egzamin. Na każde pytanie mamy nieco ponad 2 minuty, to nie jest dużo. Podczas egzaminu cały czas widzimy licznik upływającego czasu. Jeśli się zagapisz, może się okazać, że do końca zostało Ci na przykład 20 pytań i 20 minut. To jest strasznie stresujące.

Na naukę poświęciłem ok. dwóch miesięcy plus oczywiście pięciodniowe szkolenie, o którym wspomniałem wcześniej. Przez ten czas rozwiązałem setki pytań egzaminacyjnych, które przestudiowałem od deski do deski, rozwikłując każdą, nawet najmniejsza wątpliwość. Na bieżąco rozwiązywałem próbne testy online (do których miałem dostęp dzięki książce OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guid), analizowałem ich wyniki, czas w jakim udało mi się ukończyć podejście oraz poczynione postępy. Ważne jest to, żeby na bieżąco weryfikować, na jakim etapie jesteś i czy ma się szanse zaliczyć prawdziwy egzamin. Każde podejście do „ostatecznego” egzaminu trochę jednak kosztuje. Warto jest więc się dobrze przygotować.

Co mi to dało?

Na początku muszę jasno i wyrażanie napisać, że zdobycie jakiegokolwiek certyfikatu z punktu widzenia programisty, poza fajnym wpisem w CV, nie daje kompletnie nic. Certyfikaty są potrzebne dla firm, które ich wymagają ze względu na specyfikę projektu, nad jakim dana osoba ma pracować. Nietrudno sobie wyobrazić, że pewne oprogramowanie z różnych powodów musi działać niezawodnie. Producent, nie może sobie więc pozwolić, aby pracowały przy nim osoby, które do końca nie rozumieją, w jaki sposób funkcjonuje wykorzystywany przez nich język programowania. Nie wszystkie błędy wyłapiemy w procesie testowania. Ryzyko trzeba więc w jakiś sposób minimalizować, a jednym z nich jest właśnie wymóg certyfikacji programistów.

Nie oznacza to jednak, że podchodzenie do egzaminu certyfikacyjnego nie ma żadnego sensu. Dzięki całemu procesowi, jaki poświęcisz na przygotowanie, możesz dużo się nauczyć i co najważniejsze usystematyzować dotychczas zdobytą wiedzę. Osobiście bardzo dużo mi to dało. Zrozumiałem sporo elementów, które wcześniej co prawda znałem, ale jak się okazało podczas nauki, nie do końca rozumiałem sposób, w jaki one funkcjonują. Pytania certyfikacyjne są właśnie tak skonstruowane, żeby wyłapać te wszystkie niuanse. Poza tym, jak już wspomniałem wcześniej, fajnie jest mieć taki wpis w CV. To zdecydowanie pozytywne wyróżnienie wśród innych kandydatów aplikujących na dane stanowisko. Ma to duże znaczenie w przypadku, kiedy uczestniczymy w rekrutacji na stanowiska „juniorskie”, gdzie często do rekrutrów spływa cała masa zgłoszeń, które jakoś trzeba odsiać.

Pierwsza praca

Jak pewnie doskonale wiesz, ofert pracy dla Junior Java Developerów mamy bardzo dużo. Technologia ta wykorzystywana jest w wielu różnych projektach więc i ogłoszeń znajdzie się całkiem sporo. Jeśli masz już jakąś wiedzę na temat Javy oraz ogólnie programowania to z pewnością rozglądasz się za swoją pierwszą pracą. Taką ofertę ma dla Ciebie firma Comarch, która jak co roku organizuje wakacyjny staż. Aplikując na profil programistyczny masz do wyboru kilka technologii, z których będziesz pisać test, jeśli zakwalifikujesz się do dalszego etapu. Jedną z nich jest oczywiście Java. Aby wziąć udział w rekrutacji wystarczy posiadać status studenta co najmniej drugiego roku studiów pierwszego stopnia (kierunki informatyczne lub pokrewne) oraz chęci do dalszej nauki. Nie jest wymagane, żadne komercyjne doświadczenie czy zdobyty certyfikat. Staże te odbywają się w okresie lipiec-wrzesień w kilkunastu polskich miastach i oczywiście są płatne. Po ich zakończeniu, istnieje możliwość kontynuowania współpracy na ustalonych warunkach uwzględniających Twój przyszły plan zajęć. Jak aplikować? Wystarczy wypełnić formularz na stronie staz.comarch.pl, a w odpowiedzi skontaktuje się z Tobą rekruter przedstawiając dalsze kroki. Jeśli jednak masz jakieś pytania lub wątpliwości, zapraszam do lektury mojego wywiadu z Pauliną Bis, specjalistką ds. rekrutacji, a przede wszystkim koordynatorką programu stażowego Comarch. Sporo wskazówek znajdziesz też na dedykowanej grupie na Facebooku: Staże i praktyki Comarch. Możesz tam zadać nurtujące pytania.

Jak widzisz zdobycie certyfikatu Oracle Certified Associate Java Programmer I nie jest takie trudne i nieosiągalne jak by się wydawało. Wystarczy trochę, pracy, chęci i ambicji, a będziesz mógł się sam pochwalić takim dokumentem w CV! Jeśli masz jakieś pytania odnośnie tematyki wpisu, zapraszam do sekcji komentarzy. Tymczasem, trzymam kciuki za być może Twoją pierwszą rekrutację i życzę powodzenia w zawodowych projektach. Zapraszam też na bloga, gdzie już niedługo startuje seria technicznych wpisów na temat Javy.

Przeczytaj również

, , , , , , , , , , , , , ,

Dodaj komentarz

guest
6 komentarzy
Najstarsze
Najnowsze Najlepiej oceniane
Inline Feedbacks
View all comments
T Olek
T Olek
14 kwietnia 2020 23:22

Też zdałem OCA 8 niecały rok temu, teraz myślę o OCP 11 (nazwa inna ale chodzi o Proffesional dla Javy 11) bo jest taka możliwość w ścieżkach Oraclowych. :) Wg mnie egzamin prosty nie jest, wiele nietypowych konstrukcji, normalnie w życiu wiele rzeczy robi za nas IDE i nie zwracamy na to uwagi – np importy, które wymagały ode mnie mocnego wczytania się w rozdział książki. Wiele sampli debugowałem w IDE no bo… dlaczego tak się to zachowuje. :)

lukas124
15 kwietnia 2020 10:23
Reply to  T Olek

Też miałem te same problemy, wiele elementów musiałem debugować i i tak ciężko było zrozumieć czemu to tak się zachowuje. Ja miałem jeszcze ten komfort, że mogłem skonsultować się z prowadzącym szkolenie lub zapytać, któregoś z pracowników na uczelni (jeśli oczywiście znali Jave).

PS: Gratuluję pozytywnego zaliczenia egzaminu ;)

Adi
Adi
26 kwietnia 2020 09:57

Cześć, świetny artykuł i dużo wiedzy! Mam jedno pytanie, też jestem studentem informatyki i mógłbyś dokładnie opisać jak udało Ci się uzyskać szkolenie i egzamin za darmo? Mówiłeś ze ze środków unijnych, a wiesz może czy ten program obejmuje wszystkich studentów czy z danych uczelni?

lukas124
26 kwietnia 2020 21:16
Reply to  Adi

Cześć,

Program z którego ja korzystałem był organizowany na Uniwersytecie Jagiellońskim i co więcej tylko na moim wydziale i w moim instytucie. UJ ma jeszcze jeden program gdzie można przystąpić za darmo do samego egzaminu certyfikacyjnego (nie ma tutaj darmowego szkolenia) i w sumie może to zrobić każdy student (jeśli się nie mylę). Co do innych uczelni to nie mam pojęcia jak to tam wygląda. Być może też organizowane są podobne przedsięwzięcia (najlepiej zapytać w dziekanacie/sekretariacie dydaktycznym).

Dart66
Dart66
27 kwietnia 2020 14:07

Jest sobie taki programista z 30 letnim doświadczeniem z [moderacja] który tworzy filmiki na youtube. I on stanowczo odradza teraz naukę Javy, poleca natomiast Scale, Go, Rust, Swift, Kotlina. Co o tym sądzicie inne nowoczesne języki są prostsze dla początkujących?

lukas124
27 kwietnia 2020 16:15
Reply to  Dart66

Proponuję, żeby na początek zastanowić się jakiego rodzaju projekty Ciebie interesują, a potem wybrać najlepszą do nich technologię i od tego zacząć się uczyć.