Koszty życie w Emiratach są trzy razy wyższe, ale zarobki też. Historia Rafała Mańki

Największy koszt życia w Zjednoczonych Emiratach Arabskich to wynajem. Zazwyczaj wynosi 6 tysięcy złotych miesięcznie. Dolicz do tego jedzenie, rozrywkę i inne wydatki, czyli około 10 tysięcy złotych miesięcznie. – Nie polecałbym więc nikomu przyjeżdżać do pracy za mniej niż 20 tysięcy miesięcznie – mówi Rafał Mańka, Senior Android Developer w Emirates. Opowiedział nam o swojej ścieżce kariery oraz o tym, dlaczego poleca początkującym pracę w software housie.

Twój współlokator przekonał Cię, że po informatyce łatwo znaleźć dobrze płatną pracę. Rzeczywiście łatwo było znaleźć ją po studiach z psychologii społecznej?

Pracę po studiach psychologicznych było znaleźć bardzo trudno. Jedyne co mi oferowano to bezpłatne staże. Jeżeli chodzi o pracę w zawodzie programista to dosyć łatwo było mnie przekonać, bo wspomniany kolega nawet nie szukał pracy, a ciągle dostawał propozycje od rekruterów. Dostał nawet grant z Unii na stworzenie jakiegoś oprogramowania z kolegami. Na pracuj.pl było też dużo ofert dla programistów z rocznym stażem lub na stanowisko juniorskie.

Jak wyglądało Twoje przebranżowienie się? Od czego zacząłeś naukę programowania?

Zacząłem od tutoriali na youtube i artykułów w internecie. Później pojawiło się teamtreehouse.com i udemy.com. Korzystałem wtedy wyłącznie z tutoriali wideo i zajmowałem się tworzeniem własnych projektów. Książek nie polecam, bo zanim wyjdą to są już nieaktualne. Materiały z uczelni również nie za bardzo się przydały.

Podjąłeś decyzję o kolejnych studiach, tym razem wybrałeś informatykę na PJWST w Warszawie. Do czego w kontekście programowania przekonywali Cię wykładowcy?

Nie sprawdzałem wykładowców w ogóle. PJWSTK było uczelnią prywatną ze studiami zaocznymi o dobrej renomie. Te trzy kryteria musiały być spełnione, żebym się zdecydował. W retrospekcji również te studia nie były mi za bardzo potrzebne.

Jak oceniasz ten kierunek na PJWST?

Pozytywnie. To jeden z niewielu kierunków, który faktycznie przygotowuje jakoś do pracy w zawodzie. Jednak 95% wiedzy zdobywa się pracując. Na koniec studiów była przepaść wiedzy pomiędzy ludźmi, którzy pracowali w czasie studiów, a tymi co nie pracowali.

Ile czasu po studiach spędzałeś na pogłębianiu wiedzy? Kiedy złapałeś bakcyla i poczułeś, że codziennie pragniesz więcej?

Studia odbywały się co drugi weekend w sobotę i w niedzielę, a zajęcia trwały po około sześć godzin. Praca zawodowa, od poniedziałku do piątku, zajmowała mi 8 godzin dziennie, plus nadgodziny. Zawsze robiłem tyle nadgodzin, ile było to możliwe. Programowanie zaczęło mi się podobać praktycznie od razu. Podoba mi się tworzenie nowych rzeczy i umysłowe łamigłówki.

W trakcie studiów znalazłeś staż w software housie. Czego nauczyłeś się w tej firmie?

W software house nauczyłem się tworzenia dobrze wyglądających, gotowych aplikacji szybko. Duży był tam nacisk na szybkość, a mniejszy na jakość.

Z perspektywy czasu potrafisz ocenić, czy praca w software housie to był dobry start w karierze?

Moim zdaniem software software house to idealna firma na początek. Tego typu firmy są bardziej skłonne do zatrudnienia początkujących programistów ze względu na koszty. Kładzie się w nich duży nacisk na pisanie gotowych, całkowitych rozwiązań. Więc bardzo szybko człowiek musi się nauczyć jak coś zrobić od początku do końca. Jest to o tyle dobre, gdyż w dużym projekcie zazwyczaj pracuje się jedynie na wycinku czegoś i można nie rozumieć jak to się ma do całości aplikacji.

Praca w software housie to jednak duży stres i kupa nieodpłatnych nadgodzin, więc w dłuższej perspektywie polecałbym przejść do firmy, w której robi się aplikację wewnętrznie na własny użytek np. Allegro.

Pierwsza praca na pewno dała Tobie jakiś obraz pracy programisty. Możesz zdradzić jaki?

Po pierwsze taki, że zawód programisty polega na pracy z ludźmi. Nie tylko tworzenie czegoś w pojedynkę, ale przede wszystkim dialog z innymi programistami w grupie. Środowisko programistów jest raczej pozytywne. Ludzie są życzliwi i chętnie pomagają. 

Już wtedy wiedziałeś, kim chcesz być za kilka lat?

Nie. Zawsze zastanawiałem się nad tym jaki jest następny krok i co musze zrobić żeby przejść na kolejny etap. Ale nigdy nie miałem na horyzoncie dłuższej perspektywy niż dwa lata.

Mniej więcej w tym czasie postanowiłeś nauczyć się innego języka programowania. Jakiego i dlaczego zdecydowałeś się właśnie na niego?

Języka Java. Javę mieliśmy na studiach, jest to najpopularniejszy język na świecie, za podjęciem się tego języka przeważało to, że na rynku jest dużo ofert pracy i zarobki są dobre. Ponadto platforma Android dopiero się rozwijała i nie było doświadczonych programistów w tej dziedzinie. Wydawało się, że to będzie dobra inwestycja.

W Weblify programowałeś aplikacje na Androida. Pamiętasz największy problem, z jakim się wówczas uporałeś?

Wtedy dopiero się uczyłem i mój problem polegał zazwyczaj na tym, że zmieniłem kod w jednym miejscu, a aplikacja wywalała się gdzieś zupełnie indziej. Wszystko było splątane ze sobą i było pozbawione logiki. Żadna zmiana nie była trywialna i wszystko zajmowało dużo czasu.

Od prawie czterech lat pracujesz w Zjednoczonych Emiratach Arabskich. Opowiedz, jak wyglądało znalezienie pierwszej pracy w tym kraju? Co zawierała propozycja od rekrutera? Obliczyłeś, ile będzie kosztować Cię życie w tym kraju?

Praktycznie każdą pracę poza pierwszą znalazłem pasywnie przez Linkedin. Rekruter z Wielkiej Brytanii zadzwonił do mnie i zapytał się czy nie byłbym zainteresowany pracą w UK. Po przeliczeniu kosztów i zarobków zrezygnowałem, bo nie byłoby to dla mnie korzystne w tamtym czasie. W odpowiedzi zaproponował mi pracę w UAE i to opłacało się bardziej.

Na jaki poziom życia możesz sobie pozwolić żyjąc w Zjednoczonych Emiratach Arabskich? To drogi kraj?

Koszty życia w Emiratach Arabskich są ok. trzy razy wyższe niż w Polsce. Jednak zarobki również są ok. trzy razy wyższe. W efekcie poziom życia będzie wyższy ze względu na to, że dobra luksusowe (samochody, elektronika itp) kosztują tyle samo. 

Największy koszt to mieszkanie – ok. 6 tysięcy złotych miesięcznie. Dodać jedzenie, rozrywkę, inne wydatki i wychodzi na to, że potrzeba przynajmniej 10 tysięcy miesięcznie żeby się utrzymać na podobnym poziomie jak w Polsce za 4 tysiące. Nie polecałbym więc nikomu przyjeżdżać do pracy za mniej niż 20 tysięcy miesięcznie. Trzeba wziąć pod uwagę również fakt, że żona prawdopodobnie nie będzie pracować. Partnerki moich znajomych albo są stewardessami, albo nie pracują.

W przypadku programistów zazwyczaj rekrutacja przebiega przez internet, nie trzeba przyjeżdżać na miejsce. Mnie akurat znalazł rekruter z Wielkiej Brytanii – Global M. Można się do nich odezwać i pytać o oferty pracy. Jest kilka dobrych firm, którymi można się zainteresować: Emirates, Careem, Dubizzle.

Czym dzisiaj zajmujesz się?

Jestem programistą android a obecnie zostałem wydelegowany na platformę IOS. Robię oficjalną aplikację mobilną linii lotniczych Emirates. Pracuję w dziale IT aplikacji mobilnych linii lotniczych Emirates w UAE. Na moim piętrze tworzymy aplikacje mobilne dla pasażerów linii lotniczych. W to wlicza się aplikacja Android, aplikacja IOS i strona mobilna Emirates (strona desktopowa tworzona jest na innym piętrze). Łącznie z wszystkimi menedżerami, testerami i designerami to ok. 100 osób na całym piętrze.

Nas samą aplikacją Android i IOS pracują w sumie 4 zespoły, po 2 zespoły na Android i IOS. Każdy zespół to ok. 5 osób, czyli w sumie ok 20 osób. Łatwo więc sobie wyobrazić, że w takim środowisku ciężko jest dojść do konsensusu na jakikolwiek temat. Większość ludzi, z którymi pracuję to Hindusi. Ich poziom pisania kodu jest na bardzo niskim poziomie. Ogólnie polscy programiści cieszą się bardzo dobrą renomą na świecie. Pracuję z dwoma Polakami i są to najlepsi programiści w całej firmie.

Jakie miałeś pierwsze wrażenia po przesiadce na programowanie na platformie iOS?

Z jednej strony IOS i Android są bardzo podobne. Zazwyczaj rozwiązuje się te same problemy w podobny sposób. Nawet frameworki są do siebie bardzo zbliżone. Kotlin i Swift również bardzo niewiele się od siebie różnią. 

W IOSie pracuje się jednak ciężej ze względu na kilka rzeczy. Po pierwsze Xcode w porównaniu do Android Studio jest bardzo ubogi i nawet tak podstawowe rzeczy jak refaktoring czy otwarcie definicji klasy nie działa poprawnie. Wydaje się, że Apple poświęca mniejszą uwagę deweloperom tworzącym oprogramowanie na ich platformę niż Google.

Zestaw narzędzi i bibliotek na IOS jest również ograniczony w porównaniu do Javy i Androida. Kolejna kwestia to taka, że programiści IOS to środowisko bardzo hermetyczne, które bardzo rzadko interesuje się tym co dzieje się poza IOS.

Jaki stan zastałeś, gdy zacząłeś pracę nad aplikacją?

Kiedy zostałem zatrudniony zespół, który zastałem znajdował się w patologicznym stanie. Obecnie aplikacja jest jak na mój gust na bardzo niskim poziomie, a to po dwóch latach nieustannego ulepszania kodu i mozolnej pracy. Firma zdecydowała się na wprowadzenie zmian, gdyż dział IT działał bardzo nieefektywnie, był bardzo drogi w utrzymaniu i produkował niskiej jakości aplikacje, które często się psuły.

Dział IT operował w systemie wodospadowym, gdzie przydzielano ludzi do projektów trwających lata i rekrutowano ich na bazie znajomości bez sprawdzenia kompetencji. Kiedy dołączyłem do zespołu to wypuszczenie aplikacji do Play Store’a trwało ponad trzy miesiące, wliczając wszystkie testy i łatanie dziur. Dzisiaj zajmuje to już kilka tygodni, a docelowo powinno to trwać kilka dni.

Ogólnie rzecz biorąc hierarchiczny model organizacji bardzo się nie sprawdza w przypadku tworzenia oprogramowania. Decyzje na temat oprogramowania przychodzą z góry i nie mają żadnego odrealnienia w rzeczywistości. 

Z jakich narzędzi korzystacie w pracy?

W Androidzie jest Dagger2, RxKotlin, Retrofit2, Picasso, Androidx, LiveData i wszystkie inne biblioteki, które powinny się tam znaleźć. W IOS jest gorzej, bo nie ma nic z powyższych. Dependency Injection to temat, który nie istnieje w przypadku aplikacji IOS, sugestia zastosowania RxSwift również została odrzucona i to wielokrotnie przez zespół. Ogólnie tworzy się widoki w MVVM klasycznie bez użycia żadnych bibliotek.

Ile osób liczy zespół zajmujący się aplikacją?

Zespoły są bardzo duże, co sprawia sporo problemów. W mniejszym zespole praca z pewnością przebiegałaby szybciej. 10 osób w zespole to stanowczo za dużo, szczególnie kiedy każda osoba ma odmienne zdanie.

Jak rozwijasz swoje umiejętności i dbasz o to, żeby być ciągle na czasie?

Robię dużo kursów Udemy, jak tylko pojawi się nowa technologia czy coś, co mnie interesuje. Następnie jestem zasubskrybowany na newsletter Android Weekly i IOS Weekly, w ten sposób jestem na bieżąco z tym, co dzieje się w mojej branży. Dodatkowo staram się w pracy wychodzić z inicjatywą dodatkowych projektów – tak zwanych POC (proof of concept). Takich projektów u nas pojawia się całkiem sporo.

Czyli mimo tego że masz dobrze płatną pracę, nadal korzystasz z kursów na Udemy?

Oj zdecydowanie. Z Udemy korzystam bardzo dużo, obecnie mam około 30 ukończonych kursów, i kilka których nie ukończyłem z różnych powodów. Dla mnie forma nauki z Udemy jest najłatwiej przyswajalna, bo mam instruktora który prowadzi mnie za rękę krok po kroku.

Model biznesowy Udemy również się sprawdza, bo każdy instruktor chce otrzymać jak najlepszą ocenę od uczniów, przez co poświęca więcej uwagi na to żeby materiały były aktualne i kurs był kompletny.

Inne strony jak na przykład Pluralsight mają model abonamentowy z dostępem do wszystkiego, przez co wiele kursów jest niekompletnych bo autorzy nie mają motywacji żeby o nie dbać. W ostatnim czasie Medium również stało się popularne i coraz częściej biorę stamtąd informacje, ale to w przypadku jeżeli szukam jakiegoś konkretnego rozwiązania.

Oczywiście żaden programista nie przetrwałby be Stackoverflow, gdzie znajduje rozwiązanie na 95% problemów programistycznych.

Jaki kurs na Udemy szczególnie polecasz i dlaczego?

Ciężko mi wytypować jeden konkretnie. Z mojego doświadczenia wynika, że jeżeli kurs jest oznaczony jako bestseller, to na pewno jest świetny. Tylko raz spotkałem się z rozczarowaniem po kupnie bestsellera, ale natychmiast otrzymałem zwrot pieniędzy i kupiłem inny. 

Gdzie chciałbyś pracować za kilka lat? W jakim kierunku chciałbyś, aby podążała Twoja ścieżka kariery?

Jeszcze nie zdecydowałem, albo będę chciał zostać liderem zespołu programistów, albo będę chciał pracować samodzielnie nad aplikacją. Może też będę chciał pracować w pełni zdalnie, bez konieczności dojeżdżania do pracy. Najprawdopodobniej wrócę do kraju, zobaczymy jak się sprawy potoczą.

Wymieniłeś trzy potencjalne ścieżki kariery – która dla Ciebie byłaby najbardziej rozwijająca?

Każda z nich rozwija w innym kierunku. Kierowanie dużym zespołem stanowiłoby największe wyzwanie, ale również wiązałoby się z największym stresem. Praca z domu to opcja najbardziej komfortowa, ale miałbym wtedy mniejszą motywację do rozwijania się.


Rafał Mańka. Senior Android Developer w Emirates. Ukończył studia po kierunku psychologia społeczna na SWPS w Warszawie. Potem okazało się, że z jego wykształceniem raczej pracy nie znajdzie i najlepiej byłoby mu się przebranżowić. Zdecydował się nauczyć PHP, bo ten język jest najprostszy, ale zmienił język.Po kilku miesiącach dostał pracę jako developer android w Weblify. Rok później zatrudnił się w firmie, która robi oprogramowanie do fakturowanie na rynek szwajcarski. Potem napisał do niego rekruter z zapytaniem czy nie chciałbym wyjechać do Emiratów.

Patronujemy

 
 
Polecamy
Jak programista może wejść w nową rolę. Historia Moniki Wolak i Pawła Miry