
Na początek opowiem trochę o sobie
Mam 27 lat. Zanim zacząłem uczyć się Javy, studiowałem matematykę stosowaną na Wydziale Matematyki. Wydawałoby się, że powinienem być dobry w programowaniu, jeśli nie nawet doskonały. Lecz nie było tak w moim przypadku, ponieważ sabotowałem wszystkie kursy, na których pojawiało się programowanie, chociaż zdałem dzięki szczęściu — nie napisałem żadnego własnego kodu. Okazało się więc, że daleko mi było do programowania. Oczywiście, w naszym kraju z wykształceniem matematycznym nie zarobisz zbyt wiele, chyba że jako programista (Roman jest z Ukrainy — przyp. red.). I właśnie dlatego postanowiłem zająć się właśnie tym. I tak się złożyło, że postanowiłem nauczyć się Javy. Nie wynikało to z żadnej analizy rynku, ani z poszukiwania liczby wakatów czy popytu na rynku pracy. Tak po prostu wyszło. Kiedy postanowiłem dowiedzieć się, jak nauczyć się języka Java, natknąłem się na ten kurs. Nie bardzo chciałem uczyć się jedynie z książek, ale nie byłem też zachwycony kursami stacjonarnymi, ponieważ kosztują dużo pieniędzy, natomiast realne korzyści są niewielkie. Dlatego nauka online była dla mnie najlepszym rozwiązaniem. Po ukończeniu pierwszych 3 poziomów zdałem sobie sprawę, że kurs mi się podoba i mogę wykupić subskrypcję. Co więcej, trafiłem na ofertę promocyjną i kupiłem swój za pół ceny. Miało to miejsce na przełomie sierpnia i września 2015 r.Mój plan nauczania
Po przeczytaniu o tym co trzeba było zrobić, postanowiłem opracować plan, jak się uczyć, aby osiągnąć swój cel i ukończyć kursy, ponieważ nie miałem czasu na naukę w wolnym tempie. Moim celem była szybka nauka, ale nie za szybka, tak aby nie zniszczyć pragnienia, dając mózgowi trochę czasu na odpoczynek. Ponieważ ciężar, z którym chciałem się zmierzyć stanowił dla mnie nie lada przeszkodę. Oto, co postanowiłem:- Muszę się uczyć pięć dni w tygodniu (od poniedziałku do piątku).
- W weekendy będę robił wszystko oprócz nauki Javy.
- Każda sesja potrwa łącznie 4 godziny, z 15-minutową przerwą pomiędzy każdą godziną na spacer, relaks i zaparzenie herbaty.
Przejście do nowego poziomu
Trzy miesiące po rozpoczęciu studiów rozmawiałem z kolegą o tym, co jeszcze muszę wiedzieć, aby dostać pracę. Nieznajome słowa, które wypowiedział, takie jak „bazy danych” (horror!) i wiele więcej, dawały mi do zrozumienia, że muszę przyspieszyć i zrobić jeszcze więcej. Najwyraźniej znajomość gramatyki Java nie wystarczy, aby znaleźć pracę. Zacząłem przyspieszać w różnych kierunkach:Kupiłem sobie książkę „Java. Rusz głową!”. Jest ona zalecana na 4. poziomie kursu. Ale jakoś nie czytałem uważnie i umknęło mi to. Uczy tych samych rzeczy, ale z innej perspektywy, co pozwala lepiej i głębiej je zrozumieć. Wszystkim szczerze polecam.
Zacząłem szukać i chodzić na wszystkie istotne wydarzenia lokalne w moim mieście, nawet jeśli niewiele z nich rozumiałem. W końcu jednak zdałem sobie sprawę, że to co robię, nie idzie na marne. Bardzo mi pomogły.
Połączyłem naukę z czytaniem mediów programistycznych, aby śledzić wynagrodzenia w IT, przydatne wydarzenia, czytać artykuły o karierze programisty itp.
W serwisie YouTube znalazłem krótkie i treściwe filmy instruktażowe na temat MySQL. Polecam.
Należy także zrozumieć, czym są HTML i CSS. Nie sposób tego ominąć.
Zarejestrowałem się na LinkedIn, gdzie zacząłem promować swoje umiejętności i zaznaczyłem, że szukam pracy (może mi się poszczęści i ktoś mnie znajdzie). Bezkrytycznie dodawałem wszystkich do znajomych, poszerzając krąg swoich kontaktów. Aby uzmysłowić ci jak bardzo, powiem, że mam obecnie ponad 10 000 znajomych na LinkedIn. Jest to niezbędne do rozpoczęcia pracy. I to pomogło. Zespół freelancerów zajmujących się systemem Android chciał zatrudnić nową osobę i skontaktował się ze mną. Zdaję sobie sprawę, że ten incydent był niezwykły, ale tak się stało.
Pierwsze niepowodzenia
Oczywiście równolegle ze studiami zacząłem szukać stażu, żeby w końcu zostać zatrudnionym. Zostałem zaproszony na rozmowę kwalifikacyjną na staż. Po rozmowie z działem kadr wezwano do mnie nauczyciela języka angielskiego, z którym przeprowadziliśmy „rozmowę”. Wtedy nie byłem w ogóle przygotowany i więcej słuchałem niż mówiłem. Kiedy poproszono mnie o opowiedzenie o sobie, coś tam mamrotałem, ale nie było to nic szczególnego. Natomiast w momencie gdy rozmawiałem z kierownikiem technicznym, odpowiedziałem na niektóre pytania, a na wiele innych nie znałem odpowiedzi. Kiedy wspomniałem, że uczę się na CodeGym, powiedział, że przede mną przyszedł inny student z tego kursu. Byłem na poziomie 27, ale on już na 34. Po rozmowie oznajmił, że przyślą mi zadanie testowe, które zadecyduje czy jestem odpowiednim kandydatem. Skończyłem to jakoś, choć nie z całą funkcjonalnością. Po jakimś czasie napisali do mnie, że do nich nie pasuję... To bolało, ale postanowiłem wyciągnąć z tego wnioski i poszedłem dalej.Pierwsza praca
Jak już wspomniałem, mniej więcej półtora miesiąca po tym, jak założyłem swoją stronę na LinkedIn, skontaktował się ze mną pewien programista Androida z zaproszeniem do współpracy. Oczywiście mówimy o niskopłatnej pozycji. Spotkaliśmy się i dostałem ofertę pracy. Oczywiście wynagrodzenie było marne, ale nie miałem żadnych innych dochodów i cieszyłem się, że ją mam. Pod koniec stycznia rozpocząłem pracę nad systemem Android w mieszkaniu jednego z członków zespołu. Wszystko było nowe i inne. Ale jakimś cudem, jakimś sposobem pracowałem i coś wyprodukowałem. To było przerażające i nie wszystko rozumiałem — to nie były zadania CodeGym. Musiałem robić wszystko, czytać i uczyć się, co i jak. Zrobiłem projekt testowy, który z czasem może stać się czymś więcej. I tak trwało to aż do maja. Potem nasz zespół zaczął się jakoś rozpadać. Wszyscy to zauważyli i zaczęli szukać pracy.
GO TO FULL VERSION