CodeGym /Blog Java /Random-PL /Historia programisty Dimy: „Pisanie kodu jest znacznie ci...
John Squirrels
Poziom 41
San Francisco

Historia programisty Dimy: „Pisanie kodu jest znacznie ciekawsze niż jego testowanie”

Opublikowano w grupie Random-PL
Wiemy, że studenci CodeGym chcą poznać historie tych, którzy już pracują w IT. Wzięliśmy sprawy w swoje ręce i uruchomiliśmy cykl o programistach z różnych krajów i firm, którzy ukończyli nasze szkolenie Java. Ta historia dotyczy programisty Androida Dimy, który opuścił biznes hotelowy, aby rozpocząć karierę programisty. W półtora roku opanował Javę i Androida i dostał pracę jako programista.Historia programisty Dimy: „Pisanie kodu jest znacznie ciekawsze niż jego testowanie” - 1

„Każdego dnia wstawałem o 5-6 rano i uczyłem się przed pracą”.

Posiadam wykształcenie wyższe humanistyczne, specjalność zarządzanie hotelarstwem. Tak więc po ukończeniu studiów pracowałem z klientami w firmie zajmującej się hotelarstwem. W tym momencie zdałem sobie sprawę, że nie jestem zainteresowany tą branżą z kilku powodów: praca z ludźmi nie jest tak łatwa i przyjemna, jak myślałem, a zarobki też nie są zbyt wysokie. Z biegiem czasu miałem okazję przenieść się do działu produktu (firma posiada aplikację i stronę internetową do rezerwacji pokoi hotelowych), gdyż w dziale zapewnienia jakości otworzył się wakat na testowanie aplikacji mobilnych. Udało mi się znaleźć tę pracę, ale nie miałem niezbędnego doświadczenia. W trakcie pracy skończyłem na pisaniu testów automatycznych i zacząłem programować. Wtedy zdałem sobie sprawę, że pisanie kodu jest o wiele ciekawsze niż jego testowanie. W mojej głowie pojawiło się pytanie: gdzie iść na studia? Już wtedy wiedziałem o tym kursie, więc zacząłem nad nim pracować. Ukończyłem 20 poziomów i zacząłem myśleć o tym, gdzie iść dalej. Zdecydowałem, że dobrą opcją byłoby zająć się tworzeniem aplikacji mobilnych. Nie mogę powiedzieć, że wiedza, którą zdobyłem na 20 poziomach wystarczyła, aby zostać młodszym programistą. Nauczyłem się składni i koncepcji Java Core, ale była to tylko wiedza bez praktycznej pracy. Była to raczej podstawa do próby napisania kodu. Oprócz tego przeczytałem jeszcze dwie książki o teorii. Z tym bagażem zająłem się rozwojem Androida. Miałem plan treningowy: wstawałem codziennie o 5-6 rano i przed pracą uczyłem się 2 godziny. Uczyłam się też, kiedy tylko miałam wolną chwilę (np. gdy jako tester czekałam, aż programista wdraża nowe funkcje): w ciągu dnia realizowałam zadania programistyczne. Ukończyłem 20 poziomów w ciągu 1-2 miesięcy. Zgodnie z moim harmonogramem spędzałem 1-4 dni na każdym poziomie. Po tym kursie przeszedłem kilka kursów na temat programowania Androida w innych miejscach. Najpierw zdecydowałem się na podstawowy kurs na Androida, dowiedziałem się, co jest co i dalej pogłębiałem swoją wiedzę. Świat Androida ma własne zoo różnych bibliotek, które są uważane za standardy branżowe. Bibliotek głównych jest 5-6 i nie ma sensu chodzić na rozmowy kwalifikacyjne, jeśli się ich nie studiowało. Pracując na pełen etat, cała moja przygoda edukacyjna trwała około 1,5 roku. Jeśli uczysz się 8 godzin dziennie, możesz to zrobić w sześć miesięcy.

„Nieudane rozmowy kwalifikacyjne wzmocniły moje fundamenty”

Porozumiełem się z zarządem: będę się uczyć, a oni zatrudnią mnie jako programistę. Ale ten plan nie doszedł do skutku. Odszedł starszy programista i długo nie mogli znaleźć nowego. Zdałam sobie sprawę, że nie ma sensu czekać i już zaczęłam szukać innych ofert pracy i chodzić na rozmowy kwalifikacyjne. W niektórych przypadkach nie lubiłem tej firmy. W innych przypadkach nie pasowałem do siebie i nie otrzymałem oddzwonienia. Jeśli nie odpowiedziałem na pytanie podczas rozmowy kwalifikacyjnej, wracałem do domu i przestudiowałem temat, aby następnym razem móc udzielić dobrej odpowiedzi. Nieudane rozmowy kwalifikacyjne wzmocniły moje fundamenty. Dzięki temu udało mi się dostać na rozmowę kwalifikacyjną w firmie, w której pracowałam dwa lata. Znałem już wtedy wszystkie swoje słabe punkty i byłem jak najlepiej przygotowany na trudne pytania. Dostałem pracę w outsourcingowym studiu tworzenia stron internetowych, które zajmuje się tworzeniem aplikacji na zamówienie dla różnych firm. Klientami są Gazprom Media i kanał telewizyjny TNT. Nasza firma odziedziczyła ten projekt od innych deweloperów. Był w złym stanie: kod został napisany w oparciu o przestarzałe standardy. Miał już wtedy około 5 lat. Razem z innym młodszym programistą zostaliśmy zaangażowani w ten projekt. Mieliśmy szczęście: powoli rozwiązaliśmy kod, pomagając sobie nawzajem. W ciągu 2 lat sprawiliśmy, że baza kodu była reprezentatywna. Ponieważ projekt był początkowo słabo napisany, udało mi się zrozumieć Androida i włamać się w tę dziedzinę. W tej pracy negocjowałem możliwość pracy zdalnej podczas pobytu za granicą przez około 3 miesiące. Dzięki temu mogłem pojechać na Bali i stamtąd pracować. Nie wydawało mi się to dużym wyzwaniem, ale wszystko zależy od wewnętrznej samodyscypliny i samoorganizacji. Podobało mi się wczesne wstawanie. Zacząłem pracować o 4-5 rano czasu moskiewskiego. To była godzina, kiedy nikt nie rozmawiał, więc miałem czas, aby dużo zrobić. W porze lunchu w Moskwie mój dzień pracy dobiegł końca.Historia programisty Dimy: „Pisanie kodu jest znacznie ciekawsze niż jego testowanie” - 2

„Każdy, niezależnie od dziedziny, może opanować programowanie”

Po powrocie do Rosji przez jakiś czas pracowałem w tej samej firmie. W maju 2020 odeszłam, aby objąć lepsze stanowisko w firmie spożywczej DPD. Tworzymy i utrzymujemy aplikacje kurierskie: aplikacje dla kurierów i osobne dla klientów. Pracuję na dwóch aplikacjach jednocześnie. Niedawno udostępniłem pierwszą wersję aplikacji klienta. Kiedy mnie zatrudniono, było ono tylko częściowo gotowe. Musiałem to dokończyć i wypchnąć do Google Play. Druga aplikacja, aplikacja kurierska, to stara aplikacja z dużą ilością starszego kodu. Ponieważ wcześniej pracowałem nad wieloma przestarzałymi kodami, miałem doświadczenie w pracy ze starszym kodem. Bardzo mi to pomogło w mojej obecnej pracy. Dosłownie miesiąc temu pomyślnie przeszedłem okres próbny. Programowanie wymaga umiejętności rozwiązywania problemów. Umiejętności te można zdobywać na różne sposoby. Matematycy i fizycy oraz osoby z wykształceniem technicznym domyślnie pielęgnują te umiejętności. Można powiedzieć, że będzie im trochę łatwiej zająć się programowaniem. Generalnie uważam, że każdy, kto ma chęć i zainteresowanie, może nauczyć się programowania i zostać programistą.

Wskazówki dla początkujących programistów:

  • Przeczytaj książkę „Programowanie w języku Java dla dzieci, rodziców i dziadków” autorstwa Jakowa Faina. Dawno, dawno temu ta książka bardzo mi pomogła, ponieważ informatyka nie jest moją specjalnością i wielu pojęć musiałem uczyć się od zera. Książka ta wyjaśnia podstawy programowania w bardzo prostym formacie. Przeczytanie go przed rozpoczęciem studiów znacznie upraszcza ten proces.
  • Stwórz przejrzysty harmonogram treningów. Jeśli ktoś będzie próbował uczyć się kilka godzin w tygodniu bez planu, to się rozczaruje. To przepis na zapomnienie tego, czego się wcześniej nauczyłeś i brak postępów. Właściwe podejście to uczyć się trochę każdego dnia. Wtedy zobaczysz postęp.
  • Porady dotyczące Androida: Musisz zapoznać się z głównymi bibliotekami. Znajdź tutoriale na temat tych bibliotek i spróbuj napisać kod, aby zrozumieć, jakie zadania rozwiązują.
  • Możesz przygotować się na „pytania do rozmowy kwalifikacyjnej”, ponieważ wiele z nich jest dostępnych online. Są pracodawcy, którzy lubią zadawać podstęp, aby sprawdzić ogólny intelekt kandydata. Musisz być przygotowany również na udzielenie odpowiedzi na te pytania.
  • Podczas rozmów kwalifikacyjnych okaż swoje zainteresowanie i chęć nauki. Ktoś może początkowo czegoś nie wiedzieć, ale szybko potrafi przyswoić nowe informacje i szybko rozwiązać problemy w pracy. To zawsze jest cenione.
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION