Cześć wszystkim! Mój okres próbny w nowej pracy dobiegł końca i teraz mogę wreszcie podzielić się swoją historią zatrudnienia. Mam 22 lata, wykształcenie ekonomiczne. Jeszcze rok temu (luty - marzec) nie miałem żadnych umiejętności programistycznych, a Javę spotkałem tylko w grach na starym Siemensie (w postaci okna powitalnego "powered by Java" przy uruchamianiu gry). Rok temu pracowałem w dziale wsparcia technicznego. Nie powiedziałbym, że ta praca jest zła czy że mi się nie podoba, ale nie jest szczególnie interesująca. I okazało się, że w pewnym momencie pomyślałam – fajnie byłoby mieć pracę, do której nie idzie się z poczuciem „cholera, znowu będę pracować”, ale która sprawia przyjemność. Pomyślałem – co bym zrobił, gdybym miał, powiedzmy, rok, w którym niekoniecznie musiałbym zarabiać pieniądze, a mógłbym robić, co chcę? Odpowiedź jakoś sama przyszła – siedziałbym w domu i uczył się programować. Wtedy zdecydowałem, że to zależy ode mnie. Zrozumiałem, że ciężko będzie nauczyć się programowania od zera, że będzie to chwilowe niepowodzenie w mojej karierze (nie miałem wątpliwości, że Junior Developer zarabia mniej niż ja na tej pracy), ale potraktowałem to jako krok w tył aby zrobić dwa kroki do przodu. OK. Nie wcześniej powiedziane, niż zrobione. Ponieważ zupełnie nie rozumiałem języków programowania, moim pierwszym pomysłem było nauczenie się języka, o którym słyszałem najwięcej (był używany do tworzenia oprogramowania w firmie, w której pracowałem) - PHP. OK, dziewczyna mnie od tego odwiodła. Zasugerowała, żeby w ich firmie (tworzącej aplikacje mobilne) androiderzy piszą w Javie i ich pensja wydaje się być niezła. Googlowałem i szukałem, myślałem o tym i zdecydowałem się nauczyć Java. Moim pierwszym krokiem były tradycyjne próby nauczenia się czegoś nowego – uzbrój się w książki, opanuj teorię i do dzieła! W ten sposób trafiłam na książkę Horstmanna i Cornella – Java. Podstawy. To był marzec 2014. Ogólnie rzecz biorąc, przez całe życie byłem bardzo kiepski w studiowaniu rzeczy z książek. Prawdopodobnie wynika to z tego, jaki sposób percepcji dominuje u danej osoby. Zawsze tak naprawdę uczyłem się materiału dopiero po praktycznym przepracowaniu go, utrwaleniu go i zabawie z nim. Dlatego też moje pierwsze próby nauki JavyWedług książki były one skazane na porażkę. Książka jednak jest dobra. Gdzieś w kwietniu natknąłem się na grupę JavaRush VKontakte. Potem wszystko poszło jak po szynach. Rozwiązywanie problemów, mnóstwa problemów w połączeniu z odrobiną teorii to zdecydowanie optymalny sposób na naukę materiału (przynajmniej dla mnie). Siedziałem w domu, siedziałem w pracy i zdecydowałem, zdecydowałem, zdecydowałem) To wtedy utwierdziłem się jeszcze bardziej w przekonaniu, że programowanie jest dla mnie interesujące. Nie pamiętam, żebym się na czymkolwiek tak uczepił. Minęły trzy miesiące, podczas których osiągnąłem poziom 20. Wydawało mi się, że dalsza nauka języka przebiegłaby znacznie szybciej, gdybyś już dostała pracę jako programista – wtedy przebywałabyś w tym środowisku 8 godzin dziennie, 5 dni w tygodniu i rozwijałabyś się niezwykle szybko. W sierpniu zacząłem więc wysyłać CV. Z kilku miejsc przysłano mi zadania testowe, w wyniku czego nie otrzymałem żadnej oferty pracy - patrząc wstecz, ani razu się nie zdziwiłem - może i rozwiązałem postawione zadanie, ale jaki miałem zły styl kodowania) B To swoją drogą mały minus JavaRush - dopóki problem zostanie rozwiązany i testy zaliczone, zadanie zostanie zaliczone, choć Twój kod może pozostawiać wiele do życzenia. Wystarczy zainstalować tę samą wtyczkę Checkstyle w Intellij IDEA, a sytuacja będzie inna - podświetli „wątpliwe” punkty w kodzie, co pozwoli Ci napisać nie tylko działający, ale także piękny, poprawny kod. Tak czy inaczej, we wrześniu zostałem zaproszony na pierwszą rozmowę kwalifikacyjną. Wakat obejmował w przybliżeniu następujące osoby - programista dowolnego poziomu, oferujemy wynagrodzenie odpowiadające umiejętnościom. Podczas tej rozmowy zadania były w przybliżeniu następujące - podano fragment kodu. Czy jest napisany poprawnie i jakie mogą być problemy? Nie pamiętam, ile z nich dobrze trafiłem. Ogólnie trzeba było pamiętać o Null, prawie wszystkie pytania dotyczyły tego - że nie należy uzyskać dostępu do parametru metody bez uprzedniego sprawdzenia go pod kątem (jeśli param != null). Na podstawie wyników zaproponowano mi przez pierwszy miesiąc pracę za darmo (w ramach stażu), a następnie wynagrodzenie niższe (choć nieduże) niż w miejscu pracy, w którym przebywałem. Dobrze zrozumiałem, że nie powinienem oczekiwać wspaniałych propozycji, bo znałem niewiele teorii, praktykowałem tylko w JavaRush, zero doświadczenia i tak dalej. Dlatego zgodziłam się, że wyjadę za 2 tygodnie (właściwy czas na rzucenie pracy w moim starym miejscu). W tym samym czasie wysłałem CV do innej firmy. Firma ta oferowała następujące rzeczy:
- 2 miesiące szkolenia Java EE (2 razy w tygodniu po 4 godziny)
- jeśli wykażesz się dobrymi wynikami (udanie obronisz projekt, nad którym pisałeś te dwa miesiące), to zostaje Ci zaproponowana praca.
- Wykonywanie praktycznych zadań w domu.
- Jeśli zaliczysz pomyślnie, zapraszamy Cię na testy komputerowe w biurze.
- Jeśli test wypadnie pomyślnie, tego samego dnia odbędzie się z Tobą rozmowa kwalifikacyjna.
- jaka jest różnica między wyjątkami sprawdzonymi i niesprawdzonymi;
- jakie metody posiada klasa Object i do czego są potrzebne;
- jakie rodzaje kolekcji istnieją i dlaczego tam są;
- i trochę o wielowątkowości.
GO TO FULL VERSION