Poznajcie Kubę, Junior Software Developera w Ailleron. To młody, ambitny człowiek, który ma jasno określone cele, stawia na rozwój i konsekwentnie poszerza swoją ścieżkę kariery. Zapraszamy do lektury – mamy nadzieję, że zmotywuje Was do sięgania po więcej i wykorzystywania swojego potencjału.
1 . Cześć Kuba, dzięki, że zgodziłeś się podzielić z nami doświadczeniami i praktycznymi poradami dla początkujących programistów.
Cześć, bardzo mi miło, że mogę udzielić wywiadu i podzielić się wiedzą oraz doświadczeniem. Mam nadzieję, że choć w niewielkim stopniu pomoże to osobom, które zaczynają swoją przygodę z programowaniem.
2. Skąd wzięła się u Ciebie pasja do programowania?
Prawdziwa pasja do programowania pojawiła się u mnie dopiero w momencie, gdy odkryłem „swoją” technologię – taką, w której dobrze się odnalazłem. Kodowania próbowałem już w szkole średniej, a później na studiach, jednak nie zainteresowało mnie to na tyle, by wiązać z tym swoją przyszłość.
Sporo zmieniło się, gdy w czasie praktyk studenckich musiałem nauczyć się programować w obszarze systemów ERP i poświęciłem na to trochę więcej czasu. Całkiem mi się to spodobało, ale czułem, że to nie do końca jest technologia, z którą chciałbym pracować, więc zacząłem szukać czegoś dla siebie.
Od zawsze lubiłem czytać o najnowszych technologiach, gadżetach i tym podobnych. W mojej głowie pojawił się pomysł, że fajnie byłoby stworzyć coś samemu – coś, z czego mógłbym korzystać na co dzień i co byłoby łatwo dostępne. Wtedy zrozumiałem, że mogę to osiągnąć, tworząc aplikację mobilną na system Android i postanowiłem spróbować. Kupiłem kurs i wtedy wszystko zaczęło się na poważnie. Już od samego początku ta technologia bardzo mi się podobała, a uczenie sprawiało dużo frajdy. Z czasem zrobiłem kolejne kursy, stworzyłem kilka własnych aplikacji, nauczyłem się bardziej zaawansowanych zagadnień i śmiało mogę powiedzieć, że to wtedy narodziła się u mnie pasja do programowania.
3. Początki kariery są różne. Niektórzy zaczynają od praktyk lub stażu. Innym po zakończeniu studiów od razu udaje się znaleźć stabilne zatrudnienie. Jak wyglądały początki Twojej kariery jako Junior Software Developera?
Nie będę ukrywał, że było dosyć ciężko. Ukończenie szkoły średniej czy studiów na kierunku informatyka nie miało większego znaczenia dla rekruterów. Doświadczenie, które zdobyłem podczas praktyk studenckich, dotyczyło innej technologii, dlatego po przejściu na programowanie na system Android byłem na początku skreślany przez wiele osób. Poszukiwano przede wszystkim kandydatów z doświadczeniem komercyjnym, którego ja wtedy nie posiadałem.
Pomimo kilku miesięcy poszukiwań i niepowodzeń nie poddawałem się. Cały czas zdobywałem nową wiedzę, rozwijałem swoje portfolio, tworzyłem aplikacje i wysyłałem CV do kolejnych firm. W końcu odezwała się do mnie osoba z Ailleron. Najpierw otrzymałem zadanie rekrutacyjne, które poszło mi całkiem nieźle i doprowadziło do rozmowy technicznej. To właśnie ona ostatecznie zadecydowała o moim przyjęciu i otrzymaniu szansy, za co jestem bardzo wdzięczny.
4. Bardzo się cieszymy, że to właśnie w Ailleron możesz rozwijać swoje skrzydła! 😊 Na co dzień pracujesz z systemem Android. Od czego najlepiej zacząć naukę, jeśli chcemy zostać programistą Androida? Od webinarów, szkoleń, książek, a może branżowych artykułów?
Nie jestem fanem książek, jeśli chodzi o naukę programowania, zwłaszcza w kontekście systemu Android, który rozwija się bardzo dynamicznie i nieustannie się zmienia. Książki napisane nawet kilka lat temu mogą być już przestarzałe, przez co czasem nie warto poświęcać czasu na naukę opisanych w nich zagadnień. Dziś istnieją nowsze i lepsze rozwiązania.
O ile same podstawy wielu języków programowania pozostają niezmienne i wiedza z książek może okazać się wystarczająca, o tyle uważam, że jest to mało wygodny sposób na naukę kodowania.
5. W tym przypadku jednak to praktyka czyni mistrza, a zdobywanie wiedzy w ten sposób jest najskuteczniejsze.
Zgadzam się. Programowania najlepiej uczy się w praktyce, dlatego moim zdaniem bardzo dobrze jest zacząć od kursów czy artykułów branżowych, z których możemy się czegoś dowiedzieć, a przy okazji od razu samemu spróbować coś zakodować. W czasie nauki starałem się po każdym kursie napisać choćby bardzo prostą aplikację, co pomogło mi ugruntować wiedzę. Natomiast webinary i szkolenia to dobra forma uzupełnienia wiedzy, jeśli mamy już podstawy w danej dziedzinie i potrafimy się w niej poruszać.
6. Kiedy w pracy pojawia się niełatwe zadanie do rozwiązania, gdzie szukasz inspiracji i sprawdzonej wiedzy?
Jeszcze niedawno szukałem podobnych problemów i rozwiązań na wielu forach związanych z programowaniem. Głównym problemem było to, że wiele wątków pochodziło sprzed kilku lat, a proponowane rozwiązania były już przestarzałe lub opisywane trudności różniły się od mojego przypadku. Podpowiedzi internautów nie sprawdzały się u mnie. Czasami korzystałem także z filmów na YouTube, ale to było raczej rzadkością. Kolejnym źródłem były dokumentacje techniczne, jednak w wielu przypadkach pozostawiały one wiele do życzenia, ponieważ sposób ich zapisu wydawał mi się dosyć chaotyczny.
7. Zagadka „co autor miał na myśli?” do rozwiązania.
Dokładnie! Poza tym coraz częściej wspieram się sztuczną inteligencją. Ostatnie lata to ogromny rozwój tej dziedziny i uważam, że nie ma nic złego w korzystaniu z tego typu narzędzi, jeśli mają usprawnić i przyspieszyć pracę. Może nie jest jeszcze na takim poziomie, żeby rozwiązywać skomplikowane zadania, ale z pewnością w dużym stopniu pomaga, a do tego jest bardzo prosta w użytkowaniu. Wystarczy opisać dany problem, a sztuczna inteligencja zaproponuje kilka potencjalnych rozwiązań. Nawet jeśli nie sprawdzą się one w stu procentach, pozwolą chociaż nakierować nas na znalezienie właściwej odpowiedzi. Oczywiście korzystam z niej zgodnie z zasadami firmy, więc nasz kod jest bezpieczny. 😉
8. Czy masz ulubionych blogerów, YouTuberów, autorów lub branżowych guru, którzy Cię inspirują i na bieżąco śledzisz ich poczynania?
Tak, na pewnym etapie nauki trafiłem na YouTubera Philippa Lacknera, który jest na bieżąco z wiedzą i nowoczesnymi technologiami związanymi z programowaniem na system Android. Śledzę go do dziś. Nagrywa bardzo wiele filmów. Są głównie skierowane do początkujących programistów, ale nie tylko. W swoich materiałach porusza zagadnienia dotyczące podstaw, prezentuje nowoczesne rozwiązania i technologie, a także sposoby na zwiększenie wydajności lub optymalizację aplikacji, z których nawet bardziej doświadczeni programiści mogą się wiele dowiedzieć. Uważam, że przekazuje wiedzę w naprawdę prosty i zrozumiały sposób, co pozwoliło mi zgłębić wiele złożonych zagadnień. Odkąd na niego trafiłem, zauważyłem bardzo duży postęp w pisaniu kodu i tworzeniu aplikacji. Uważam, że warto śledzić profil Philippa, chociażby ze względu na cykliczne filmy, w których zbiera i prezentuje najważniejsze informacje z każdego miesiąca dotyczące systemu Android i języka Kotlin.
9. Rozwój zawodowy w dużej mierze zależy od miejsca, w którym pracujemy. W jaki sposób Ailleron Cię w tym wspiera?
Ailleron daje sporo możliwości, jeżeli chodzi o rozwój. Poza głównym projektem, w którym pracuję na co dzień, miałem również możliwość pracy nad innymi przedsięwzięciami, dzięki czemu wiele się nauczyłem. Brałem udział w dostosowywaniu naszego firmowego produktu, LiveBank, tak, aby spełniał wymogi WCAG, czyli dostępności dla osób z niepełnosprawnościami. Dzięki temu projektowi sporo dowiedziałem się na temat dostępności, a jest to wiedza praktyczna, która w najbliższym czasie może okazać się bardzo pomocna. Według nowych zaleceń inne aplikacje również będą musiały zostać dostosowane do potrzeb osób z niepełnosprawnościami.
Oprócz tego mamy możliwość pracy z nowymi technologiami. W ostatnim czasie realizowaliśmy projekt w KMP (Kotlin Multiplatform), który zakładał utworzenie wieloplatformowej biblioteki związanej z banerami reklamowymi. Zastosowana technologia umożliwiła napisanie wspólnego kodu zarówno na platformę Android, jak i na iOS. Istnieje spora szansa, że wieloplatformowość w branży mobilnej zyska na znaczeniu w najbliższych latach, a zdobyta wiedza może okazać się bardzo cenna.
Popularnymi inicjatywami pozwalającymi rozwijać się zawodowo, są gildie. W Ailleron jest ich sporo, a ta, w której ja uczestniczę, to Gildia Mobile, zrzeszająca programistów z firmy pracujących w technologiach mobilnych. Spotykamy się wspólnie co dwa tygodnie, aby wymienić się doświadczeniami, wiedzą, problemami oraz rozwiązaniami z naszych projektów, a także, aby zapoznać się z nowymi technologiami i wzorcami projektowymi.
Każdy pracownik ma także pulę 80 godzin rozwojowych, które może wykorzystać na różnego rodzaju kursy i szkolenia.
10. Podsumowując, jakie trzy rady dałbyś osobom, które rozpoczynają karierę Software Developera?
Przede wszystkim uważam, że z programowania należy czerpać radość. Jeśli uczymy się kodowania tylko po to, by przebranżowić się ze względu na lepsze zarobki, to raczej nie tędy droga. Można się w ten sposób szybko i dosyć brutalnie zderzyć z rzeczywistością, dlatego już na początku warto zadać sobie pytanie, czy na pewno chcemy to robić. Jeżeli odpowiedź jest twierdząca i zamierzamy iść w tym kierunku, to moim zdaniem warto poszukać języka, w którym będziemy się dobrze czuli. Możliwości jest bardzo dużo, a lepiej rozwijać się w interesującej nas technologii, niż w tej, na którą jest największy popyt lub która oferuje najwyższe zarobki, bo w przeciwnym razie łatwo można się wypalić.
11. Pasja, o której rozmawiamy, jest niewątpliwie źródłem motywacji do działania i rozwoju. Co Twoim zdaniem jest równie ważne?
Właśnie tak uważam. Kolejną radą jest to, że należy wyróżniać się na tle konkurencji podczas poszukiwania pracy. Często na jedno stanowisko aplikuje kilkadziesiąt, a czasem nawet kilkaset osób. Trzeba już na starcie pokazać, dlaczego warto postawić akurat na mnie. Bardzo ważne w tym przypadku jest przygotowanie dobrego CV, które od razu zainteresuje i zachęci rekruterów. Równie istotne jest odpowiednie portfolio.
Jeśli nie mamy doświadczenia, musimy udowodnić, że potrafimy programować, a najlepszym sposobem na to jest udostępnienie autorskich projektów na repozytorium. Dobrze jednak, żeby były to aplikacje przemyślane, które faktycznie pokazują to, co potrafimy. Spotkałem się na wielu grupach z sytuacjami, w których ludzie przedstawiali swoje projekty, które w 95% bazowały na aplikacji z kursu. Jedyną zmianą była inna paleta kolorów lub niewielkie korekty wizualne. Z takim podejściem niestety za wiele nie osiągniemy, ponieważ w żaden sposób nie udowadniamy, że rozumiemy zagadnienia z kursu i potrafimy je wykorzystać. Dobrze byłoby rozplanować kilka, nawet prostych aplikacji, które nie muszą być innowacyjne, ale które pokażą, że mamy solidne podstawy w wielu aspektach danej technologii.
Ostatnia rada może wydawać się trochę oklepana, ale jest bardzo prawdziwa – moim zdaniem nie można się poddawać, zwłaszcza jeśli dopiero zaczynamy karierę i nie mamy dużego doświadczenia. Rynek IT nie jest zbyt łaskawy w ostatnim czasie, a próg wejścia jest dosyć wysoki, dlatego trzeba uzbroić się w cierpliwość i pogodzić z faktem, że znalezienie pierwszej pracy może trochę potrwać. Na początku kariery rzadko zdarza się, że firmy same się do nas zgłaszają, dlatego to my musimy aktywnie szukać szans. Należy stawiać na rozwój i uczyć się nowych rzeczy, ale nie zapominać również o kształtowaniu kompetencji miękkich, bo branża IT to nie tylko wiedza techniczna.
Kuba, bardzo dziękuję Ci za rozmowę. Myślę, że będzie to ogromna dawka motywacji, szczególnie dla osób, które zaczynają swoją przygodę z IT i próbują się rozeznać w tym środowisku. Życzę Ci ogromu sukcesów!
Dziękuję za rozmowę!