Od osiedlowego klubu informatycznego po doktorat z inżynierii komputerowej. Historia Michała Bryka
Michał Bryk na studiach zraził się do programowania. Zdanie zmienił, gdy zaczął studia doktoranckie i gdy znalazł pierwszą pracę. Ofertę pracy w małej firmie z Doliny Krzemowej znalazł na Gumtree, dziś portalu, który nie kojarzy się z ofertami pracy w IT. Jak przebiegała dalsza ścieżka kariery Michała? O tym dowiecie się z naszej rozmowy.
Spis treści
Dlaczego postawiłeś na branżę IT?
Programowaniem interesowałem się już od małego, a dokładniej od czasu pierwszego PC, czyli jak miałem 8 lat. W podstawówce chodziłem do jakiegoś klubiku osiedlowego, gdzie uczyłem się programowania. W liceum na informatyce zapoznałem się z C++. Potem studia na Politechnice Warszawskiej na kierunku elektronika. Co ciekawe, skutecznie zniechęciły mnie do programowania i za wszelką cenę starałem się go unikać. Nigdy nie związałbym się z IT (programowaniem) gdyby nie studia doktoranckie, gdzie niejako zmuszony byłem “przeprosić” się z programowaniem i zacząć tę przygodę od początku. Okazało się to wielką przyjemnością.
Jak znalazłeś pierwszą pracę i czego się w niej nauczyłeś?
Znalazłem ogłoszenie na portalu Gumtree. Bardzo mała firma, z Doliny Krzemowej, ale z właścicielem o polskich korzeniach. W Polsce zatrudniał dwóch programistów, a ja byłem trzeci.
Firma produkowała urządzenia do nagrywania wykładów przeznaczonych na rynek USA. W tak małej firmie miałem okazję zapoznać się dokładnie ze wszystkimi etapami tworzenia produktu: od pomysłu, projektu, wykonania, wdrożenia, sprzedaż aż po utrzymanie.
Oczywiście praca z doświadczonymi kolegami pozwoliła mi mocno podnieść kwalifikacje z programowania. Poznałem różne technologie, wzorce projektowe, podstawy codziennej pracy w IT: kontrola wersji, itp. Oprócz tego, z racji mojego elektronicznego wykształcenia, miałem możliwość pracy z hardwarem, co dało mi możliwość wykorzystania wiedzy teoretycznej w praktyce.
Chyba najważniejszą lekcją jaką wyniosłem z tej pracy to świadomość, że inżynierowie to tylko mały element machiny jaką jest firma. Bez sprawnie działającego działu sprzedaży, bez kontaktów z klientami nawet najlepsi programiści nie są w stanie zrobić dobrego produktu i na nim zarobić.
Jakie masz podejście do zmiany pracy – kiedy jest dla Ciebie moment na to, żeby zmienić pracodawcę?
Jeżeli pojawia się oferta z dobrym wynagrodzeniem i projektem, który jest w jakiś sposób dla mnie rozwijający, a czuję, że z obecnego projektu wyciągnę już mało, lub już nic nie zostało a jednocześnie dałem w ten projekt sporo siebie – to jest ten czas na zmianę.
Aplikujesz na ciekawe stanowiska czy raczej praca znajduje Ciebie?
Od czasu do czasu jeżeli jakieś ogłoszenie mnie zaciekawi to wysyłam aplikację. Ostatnia praca to jednak znalazł mnie rekruter.
Na co zwracasz uwagę zastanawiając się nad przyjęciem oferty rekrutera?
Przede wszystkim jak w wiadomości od rekrutera nie ma widełek to nawet nie odpisuję – szkoda mojego czasu. Jak jest stawka i opis projektu, który mnie ciekawi to zawsze jestem gotów porozmawiać i podpytać o szczegóły.
Podczas rozmowy rekrutacyjnej pytasz o liczbę seniorów w twoim przyszłym zespole? Ważne dla Ciebie jest to z kim – pod kątem doświadczenia – będziesz współpracował?
Raczej nie. Pytam ogólnie o zespół: ile osób, jak wygląda codzienna praca, itp. To ilu jest seniorów o niczym nie świadczy, bo to tylko tytuł. Liczba lat doświadczenia też nie mówi wszystkiego o tym, jakim ktoś jest programistą. Pracowałem kiedyś z osobą, która mogła się pochwalić wieloma latami doświadczania jako programista, ale to co pisała nie było, oględnie mówiąc, zgodne ze sztuką i dobrymi wzorcami programowania.
Rozumiem, w jaki zatem sposób przekonujesz się, że w danej firmie znajdziesz to czego szukasz?
Po pierwsze: Jak już wspomniałem pytam jak wygląda codzienna praca. Sposób podejścia do tworzenia oprogramowania jest bardzo ważny. Konkretna technologia (np. standard języka) to dla mnie rzecz nieco mniej ważna. Można to wywnioskować na podstawie wiedzy jak wygląda ścieżka typowego taska:
- skąd się bierze taki task: to pozwala wyrobić sobie zdanie, jak zorganizowana jest praca; czy jest zespół odpowiedzialny za analizę biznesową i kontakty z klientem (wewnętrznym lub zewnętrznym), czy potrafi przełożyć to na konkretne taski, czy też ktoś zgłasza bugi na rympał i trzeba je naprawiać.
- jak wygląda proces wprowadzania zmian do kodu: czy jest code review – to rzecz podstawowa (bez tego nie rozważam podjęcia pracy), która pozwala na ciągłe ulepszanie nie tylko kodu, ale także na rozwijanie własnych umiejętności. Pozwala także na ciągłe podnoszenie kwalifikacji zespołu.
- czy są testy: kolejna podstawowa rzecz.
Ponadto zawsze pytam o to, kto będzie moim bezpośrednim przełożonym, kto będzie mi delegował taski itp. Innymi słowy, jeżeli wiem nad jaką tematyką pracuje się w firmie, najważniejszą rzeczą jest usystematyzowana organizacja pracy. To pozwala dużo powiedzieć o firmie.
Dwa lata temu firma, w której pracowałeś zamknęła jeden z oddziałów, o czym napisałeś na LinkedInie. Co działo się dalej? Rzeczywiście rekruterzy dobijali się drzwiami i oknami?
Wtedy tak jeszcze nie było. Miałem wtedy sporo rozmów, ale to ja sam wysyłałem dużo CV i to ode mnie wychodziła inicjatywa. Linkedin nie był jeszcze wtedy tak popularny do szukania pracy. Z tego co pamiętam to korzystałem głownie z pracuj.pl. To, że oddział się zamknie wiedziałem z wyprzedzeniem, także miałem dość czasu, aby przygotować się do zmiany pracy i do rekrutacji.
Jak z Twojej perspektywy wygląda rynek C++? To rynkowo wartościowy język programowania? Programiści C++ nie mają problemu ze znalezieniem ciekawej i dobrze płatnej pracy?
Przez wiele lat C++ był średnio-popularnym językiem programowania wśród pracodawców. Znacznie bardziej popularna była Java, PHP itp. – tak wyglądało to z perspektywy ogłoszeń o pracę. Od jakiś dwóch lat obserwuję coraz więcej ofert dla programistów C++. Trzeba mieć jednak świadomość, że jest to dość trudny język i aby opanować jego wszystkie meandry potrzeba sporo wysiłku, nauki. Jest za to najwydajniejszym (razem z C). Dlatego wszędzie tam, gdzie liczy się wydajność jest C++.
Co do ofert: tych jest dużo, wydaje mi się, że w miarę różnorodnych. Na pewno najwięcej jest ofert z Embedded, także praca na nieco niższym poziomie. Sporo też firm fintech poszukuje programistów C++.
Co sprawia, że nie czujesz, że stoisz w miejscu?
Jeżeli w mojej pracy dojdę do etapu, że rzeczy robię powtarzalnie i mechanicznie – to jest ten moment, że już stoję. Kiedy nowe zadanie to nowe wyzwanie i nauka to wtedy czuję, że jeszcze sporo mogę się nauczyć i to jest ten ruch w przód.
Jak wyglądało Twoje przejście z Juniora na poziom wyżej? Co przyczyniło się do tego awansu?
Ciężko powiedzieć, bo chyba nie miałem nigdy oficjalnego awansu. Przyszło samo wraz ze stażem – aczkolwiek nigdy nie mieliśmy w tej pracy tak określonych stanowisk. Przyszło chyba samo wraz z poważniejszymi zadaniami.
W jaki sposób dziś na poziomie Seniora podnosisz swoje kompetencje?
Czytam blogi i oglądam filmiki na YT z konferencji dotyczących programowania. Na tym etapie chyba nie ma lepszej metody.
Co z perspektywy czasu zrobiłbyś dzisiaj inaczej? Zacząłbyś przygodę z IT od pracy w innego rodzaju firmie?
Moja kariera potoczyła się w taki sposób, że niczego bym nie zmienił. To chyba szczęście móc tak powiedzieć.
Co wpłynęło na to: ludzie, których spotykałeś, czy interesujące projekty? Chcę znaleźć wskazówkę dla początkujących, by wiedzieli, czego powinni szukać.
Przypadek? Tak sądzę. Wydaje mi się, że nie ma jednej drogi. Każdy musi odnaleźć swoją ścieżkę. Z każdego miejsca pracy można wyciągnąć wartościowe rzeczy, które nas kształtują i spotkać wartościowych, jak i nie wartościowych ludzi. Na pewno trzeba spróbować pracy i w dużej firmie, i w małej, po prostu w kilku różnych miejscach. Daje to możliwość poznania wielu ludzi, różnych podejść do programowania – jednym słowem warto zdobywać jak najwięcej doświadczenia w różnych miejscach i z każdego postarać się czerpać to co najlepsze.
Ponadto można także doświadczyć, zaobserwować wiele złych rzeczy, których można ustrzec się w przyszłości. Taka jeszcze rzecz przyszła mi do głowy: najważniejsze, by miejsce, w którym się pracuje dawało możliwość osobistego rozwoju, czy to technicznego czy osobowościowego. Nie wolno stać w miejscu!
Jakie masz plan na siebie? Chcesz piąć się po szczeblach technicznej ścieżki kariery czy iść w kierunku zarządzania zespołem?
Osobiście nie widzę siebie w roli managera. Pasuje mi rola eksperta – mogę skupić na tym, co lubię, czyli na programowaniu. Zarządzanie zespołem to już odchodzenie od programowania na rzecz kierowania ludźmi i zasobami. To już nieco inne kompetencje.
Jakie masz zdanie o pracy za udziały. Przyjąłbyś model niższa pensja, ale z udziałami w spółce?
Myślę, że w tym wieku i z rodziną już raczej niechętnie. Rozważyłbym małą firmę np. z Doliny Krzemowej z dobrym pomysłem, w którym widziałbym potencjał – w końcu tak się rodzą fortuny w świecie IT w USA. W innym wypadku (np. firma notowana na giełdzie, albo spółka w PL) nie.
Michał Bryk. Senior C++ Software Developer w Tradeweb. Absolwent wydziału Elektroniki i Technik Informacyjnych PW na kierunku Elektronika i Inżynieria Komputerowa. Dyplom obronił w 2008. Uczestnik studiów doktoranckich na tym samym wydziale oraz na Technische Universiteit Eindhoven. Zawodowo zajmuje się programowaniem w C++ od 2010.