Jak się przebranżowić i zostać DevOpsem w… 6 miesięcy. Historia Adriana

wkontenerach.pl 1 miesiąc temu

Czy osoby spoza branży IT mają szansę na przebranżowienie się i zostanie DevOpsem? Jak przygotować się do rekrutacji i od czego należy zacząć? O tym, ale nie tylko, opowiada nam Adrian, który z inżyniera serwisu stał się inżynierem DevOps w… pół roku!

Zacznij od planu

Julia: Na początek opowiedz krótko o sobie — czym się zajmowałeś, zanim rozpocząłeś karierę DevOpsa? Od kiedy tak naprawdę działasz w IT?

Adrian: Z wykształcenia jestem inżynierem na kierunku Elektronika i Telekomunikacja. Moja pierwsza styczność z IT rozpoczęła się właśnie na studiach, gdzie bardzo zainteresowało mnie programowanie aplikacji mobilnych — jednak wtedy moja ścieżka kariery potoczyła się w innym kierunku. Bardzo gwałtownie po ukończeniu studiów rozpocząłem pracę w firmie zajmującej się serwisem urządzeń laboratoryjnych. Tam zajmowałem się techniką pomiarową i sprzętem laboratoryjnym do badań jakości — głównie aparaturą starzeniową (symulacja warunków środowiskowych). Spędziłem w tej pracy 7 lat, przez ostatnie 4 lata jako kierownik techniczny laboratorium pomiarowego i równocześnie inżynier serwisu.

Julia: I jak to się stało, iż wróciłeś na ścieżkę IT?

Adrian: Praca bardzo mocno afektowała moje życie osobiste, głównie ze względu na bardzo częste podróże po całym kraju. Brakowało mi czasu w realizację swoich pasji oraz aktywność fizyczną, której jestem zwolennikiem. Muszę przyznać, iż bardzo dużą rolę w decyzji o zmianie odegrała moja narzeczona, która pracuje w IT od wielu lat i mogłem z boku obserwować tę branżę. Od młodych lat byłem typem dzieciaka “od komputerów”, ten temat od zawsze mi towarzyszył i czułem, iż prędzej czy później będę chciał wrócić do tego świata.

Julia: Takie powroty chyba nie są łatwe, szczególnie w tak specjalistycznych branżach. Mam wrażenie, iż w dzisiejszych czasach rynek pracy w IT jest dość zamknięty, tzn. nie ma już takich możliwości łatwego przebranżowienia się jak kiedyś. Nie obawiałeś się tego?

Adrian: Nie są łatwe, jednak miałem pewien plan, jak rozpocząć karierę w IT w określony sposób i spróbowałem go zrealizować. Tak naprawdę moją pierwszą decyzję o tym, iż chcę zmienić branżę podjąłem jeszcze przed otrzymaniem jakiejkolwiek oferty zatrudnienia. Mój plan opierał się na rozpoczęciu przygody z IT jako tester. Stało się tak z kilku powodów:

  • znałem kilka osób z tego grona,
  • zazwyczaj próg wejścia dla testerów jest niższy, zatem łatwiej jest się przygotować,
  • szukałem oferty związanej z telekomunikacją, a z racji, iż mieszkam we Wrocławiu, zamierzałem spróbować swoich sił w Nokia.

I tak, obawiałem się tego, jednak zaryzykowałem. Wyznaję zasadę, iż czasem musimy zrobić krok w nieznane, żeby móc się dalej rozwijać.

Julia: A jak wyglądały twoje przygotowania do realizacji tego planu?

Adrian: Zapoznałem się z ofertami pracy, do tego udało mi się dotrzeć do kilkoro znajomych, którzy pracowali w Nokia. Zrobiłem wywiad na temat tego, z jakich narzędzi się tam korzysta oraz jak bardzo wiedza z zakresu telekomunikacji jest potrzebna do pełnienia codziennych obowiązków. Potem rozpocząłem przygotowania. Korzystałem głównie ze źródeł internetowych — jeżeli chodzi o teorię związaną z telekomunikacją, materiałów jest bardzo dużo i są łatwo dostępne. jeżeli chodzi natomiast o techniczne aspekty, to skupiłem się na obsłudze Linuxa z poziomu wiersza poleceń oraz przypomnienie sobie podstaw sieci komputerowych.

Złożyłem CV i po około miesiącu zaproszono mnie na screening. Tydzień od tego czasu miałem pierwszą rozmowę techniczną, na której wypadłem słabo.

Julia: Co mogło być tego powodem?

Adrian: Wydaje mi się, iż było to połączenie ogromnego stresu, bo pierwszy raz od 7 lat zmieniałem pracę, oraz pytań, na które po prostu nie byłem gotowy. Jednak kilka dni po tej rozmowie otrzymałem telefon z feedbackiem i propozycją kolejnej rozmowy technicznej z zakresu, w którym wypadłem słabo. Tym razem byłem w stanie się zrewanżować i rozmowa przebiegła zdecydowanie lepiej. Otrzymałem ofertę pracy. W moim przypadku był to regres finansowy, jednak liczyło się dla mnie coś więcej — chodziło o zmianę swojego życia na kilku płaszczyznach. Ofertę przyjąłem. Oficjalna data mojego startu w IT to grudzień 2021.

Początki pracy w IT

Julia: Jak dalej potoczyła się twoja kariera?

Adrian: Początek był dla mnie trudny zarówno technicznie jak i organizacyjnie. Wcześniej pracowałem w malutkiej firmie, gdzie każdy odpowiadał za siebie. W korporacji praca wygląda zupełnie inaczej, ale dałem sobie czas, by się dostosować. Przede wszystkim dostałem tutaj możliwość spokojnego poznawania niuansów branży oraz oswojenia się z procesami wytwarzania oprogramowania. Rozpocząłem poznawanie Linuxa, zaznajamiałem się cora lepiej z testowaniem systemu i następnie automatyzacją testów, które sam przygotowałem . Był to dobry fundament, by rozpocząć budowanie swojej kariery w IT. Na szczęście, ze względu na wcześniejszą styczność hobbystyczną ze światkiem komputerów, programów itp. zdobywanie wiedzy przychodziło mi dosyć dobrze.

Julia: To tam rozpoczęła się Twoja przygoda z konteneryzacją?

Adrian: Dokładnie po około 6 miesiącach trafiłem do projektu z konteneryzacją — ponieważ miałem w nim pracować zacząłem intensywnie zdobywać wiedzę z tego zakresu i w trakcie przeglądania blogów i filmów coraz częściej spotykałem się z tematyką DevOps. Im więcej o tym czytałem, tym ciekawsze narzędzia i procesy odkrywałem. Moja wcześniejsza praca (przed IT) polegała bardzo często na rozwiązywaniu problemów technicznych, wymagała cierpliwości — praca z infrastrukturą jako DevOps bardzo często polega również na tym. Skłoniło mnie to do decyzji, iż chcę pracować właśnie w tej roli.

Julia: W trakcie poszukiwań materiałów natknąłeś się na szkolenia z serii Maestro Damiana?

Adrian: Szkolenia Damiana są odrobinę później w mojej historii, ale odegrały istotną rolę dla mojej kariery w DevOps.

Jak wygląda rozmowa rekrutacyjna na stanowisko DevOps?

Julia: W takim razie wróćmy do samego pomysłu rozpoczęcia pracy jako DevOps. Kolejna zmiana, więc i kolejne przygotowania — wiedziałeś, czego mogą od ciebie oczekiwać rekruterzy i jakie będą zadawać pytania?

Adrian: Tak, tym razem również starałem się mieć jakiś plan… Najpierw zrobiłem rozeznanie w ogłoszeniach na stanowiska, które wydawały mi się interesujące. Przeanalizowałem stack technologiczny i powstał w mojej głowie jakaś lista narzędzi, które chciałbym poznać i które pomogą mi w zmianie pracy. Równocześnie sprawdziłem aktualne oferty wewnątrz swojej korporacji, ponieważ zwykle łatwiej jest zmienić pracę wewnątrz firmy — może aktualnie realizowane są jakieś programy, które ułatwiają taką zmianę? Po analizie wziąłem się do pracy — stawiam na tzw. “Learning by doing”, więc szukałem takich materiałów, które pozwolą mi nabyć praktyczne umiejętności. Korzystałem z przeróżnych portali, zarówno platform, które oferowała mi firma, jak i zewnętrznych.

Przyznam, iż tutaj po raz pierwszy natknąłem się na kurs Damiana. Wziąłem udział w webinarze o Kubernetes — był dla mnie bardzo interesujący. Nie czułem się wtedy jednak na siłach, żeby rozpocząć przygodę z Kubernetes na “pełny etat”, zachowałem sobie namiary na Kubernetes Maestro i czekałem na kolejną edycję kursu…

Wracając do poszukiwań pracy jako junior DevOps, w moim przypadku padło na ofertę wewnętrzną — gdzie szukano junior DevOpsa do małego zespołu, który się rozwijał. Zaaplikowałem na to stanowisko i zostałem zaproszony na rozmowę.

Julia: O co pytali Cię rekruterzy?

Adrian: Rozmowa skupiała się na tematach: znajomości podstaw Dockera, sprawdzenia jak rozumiem koncepcję wirtualizacji, obsługi Linuxa, i sprawdzenia wiedzy z zakresu CI/CD. Chodziło o koncepcje oraz opisanie niektórych narzędzi, które są używane w do tych zadań

Julia: Udało się?

Adrian: Tak, udało mi się pozytywnie przejść rozmowę — dokładnie po roku pracy jako tester otrzymałem ofertę zmiany roli wewnątrz firmy. W roli DevOpsa zajmowałem się tam następującymi tematami:

  • zarządzanie infrastrukturą (VMware / OpenStack),
  • automatyzacja budowania środowisk dzięki Jenkinsa oraz Ansible,
  • nadzór na stanem środowisk,
  • kontrola testów integracyjnych,
  • wdrożenia nowych wersji narzędzi, rozbudowa, troubleshooting
  • praca z RHEL jako bazowy obraz dla maszyn wirtualnych.

Już jako DevOps oficjalnie wróciłem do tematu Kubernetes Maestro i zdecydowałem się na zakup kursu po kolejnym bardzo ciekawym webinarze Damiana.

Julia: Naprawdę ambitnie! Wiedziałeś już od pierwszych tygodni pracy jako Junior DevOps, iż to coś dla ciebie, czy pojawiały się wątpliwości?

Adrian: Jasne, iż były wątpliwości! Początek był brutalny. Zespół był mały, jednak pełen pozytywnych ludzi, wśród których znalazłem mentorów, którzy pomogli mi się wdrożyć i bardzo sporo mnie nauczyli. Dzięki temu powoli poszerzałem swoje umiejętności i praca była dla mnie coraz ciekawsza i dająca satysfakcję

Julia: Co było dla Ciebie zdecydowanie najtrudniejsze?

Adrian: Na początku najtrudniejsze okazało się zrozumienie ogromnej ilości kodu z Ansible. Było tam bardzo dużo zależności, których zrozumienie zajęło mi tak naprawdę kilka miesięcy. Jednak później bardzo polubiłem się z Ansiblem, choćby prześmiewczo nazwaliśmy mnie w zespole “YAML Engineer”.

Czy znajomość Kubernetesa jest niezbędna, aby pracować jako DevOps?

Julia: Do czego zatem przydał Ci się Kubernetes i jaki wpływ na to miało szkolenie Damiana? Na wspomnianym webinarze zauważyłeś potencjał i uznałeś, iż to może Ci się przydać w pracy, czy może miałeś już jakiś odgórny nacisk na zaznajomienie się z Kubernetesem?

Adrian: W trakcie mojego czasu spędzonego jako junior DevOps zacząłem mocniej kłaść nacisk na tematy związane z chmurą publiczną oraz orkiestracją kontenerów. Systematycznie po pracy zdobywałem wiedzę głównie z AWS oraz Kubernetes. Nie był to odgórny nacisk, starałem się po prostu być na bieżąco, jeżeli chodzi o trendy w branży oraz na to, co się pojawia w ofertach dla Inżynierów DevOps.

Chciałem zdecydowanie poprawić swoją wiedzę z Kubernetes, dwa webinary Damiana były naprawdę dobrze zbudowane, miały bardzo fajny flow — zawierały to, co lubię najbardziej, czyli praktyczne pokazanie interesującego rozwiązania. A przecież na wiedzy praktycznej zależało mi najbardziej. Szkolenie bardzo mi pomogło w dobrym zrozumieniu podstaw Kubernetesa, opanowaniu poruszania się w tym systemie oraz zrozumienie, iż produkcyjne rozwiązania są o wiele bardziej złożone niż kursy na YouTube albo Udemy. W tym szkoleniu mogłem naprawdę zbudować klaster i zacząć go rozbudowywać o zdobytą podczas szkolenia wiedzę.

Do tego podobało mi się wsparcie przez Discord — sam zostałem dosyć aktywnym uczestnikiem tej społeczności, w miarę jak rozwiązywałem kolejne zadania praktyczne z kursu. W tym kursie Damian poruszył również temat GitOps – to był kolejny haczyk, który połknąłem. Prezentacja ArgoCD była dla mnie bardzo interesująca, zacząłem zgłębiać ten temat również poza kursem. W międzyczasie pojawiło się Automation Maestro, które bardzo mocno ten temat rozwija.

Julia: Rozumiem. Czy na obecnym stanowisku ta wiedza faktycznie ci się przydała? Niedawno brałeś udział w kolejnej rekrutacji i to znów ze skutkiem pozytywnym, opowiesz o tym?

Adrian: Tak, po około roku podjąłem decyzję o wyjściu poza swoją firmę i poszukiwaniu nowych wyzwań w tematyce DevOps. W tym momencie byłem uzbrojony w chęć rozwoju oraz dwa szkolenia od Damiana — Kubernetes i Automation Maestro. Kubernetes i tematyka GitOps są ze sobą ściśle powiązane, te dwa szkolenia dały mi naprawdę bardzo dobrą bazę do praktycznej pracy z tymi narzędziami. Poświęciłem sporo czasu po pracy, by rozwijać swoje umiejętności i spróbować swoich sił w kolejnych rekrutacjach. Jak się okazało, trafiłem ze szkoleniami w dziesiątkę — otrzymałem zaproszenie na rozmowę o pracę do firmy/zespołu, który pracuje w pełni w podejściu GitOps.

Dzięki zdobytej wiedzy udało mi się, przejść tę rozmowę pozytywnie i otrzymać nową pracę, która daje mi styczność z interesującymi mnie technologiami.

Julia: Naprawdę gratuluję podejścia i sukcesu! Myślę, iż ta rozmowa będzie niemałą kopalnią wiedzy dla tych, którzy planują przebranżowienie. Na zakończenie zapytam jeszcze, jakich rad udzieliłbyś osobie, która zastanawia się nad przebranżowieniem i wejściem do świata DevOps?

Adrian: Wiem, iż zmiana branży czy też po prostu pracy jest bardzo trudna i stresująca dla wielu osób. Sam byłem osobą, która bardzo długo wzbraniała się z tą decyzją z obawy, iż mogę nie sprostać oczekiwaniom wyznaczonym przez siebie samego jak i otoczenia, w którym będę się znajdował. Kilka rad, jakie mógłbym udzielić:

  • Oswajaj się z tą myślą regularnie. jeżeli masz kogoś znajomego, warto z nim porozmawiać, zapytać o nurtujące nas rzeczy, posłuchać historii innych osób, które zmieniły pracę i nie żałują
  • Jeśli już jesteś zdecydowany, to opracuj sobie plan — warto dostosować go do twojego trybu życia
  • Uwierz w realizację celu dzięki małych kroków
  • Wyznacz sobie na początek jakiś mały cel z tym związany, rozłóż go na mniejsze kroki i po prostu zacznij pracować nad jego realizacją

Jeśli chodzi o stricte DevOpsowe porady, to zacznij interesować się branżą — jest wiele ciekawych źródeł, z których można zaczerpnąć podstawowej wiedzy, która pomoże zacząć tę naprawdę ciekawą przygodę. Sam osobiście obejrzałem wiele ciekawych prezentacji w tej tematyce — tutaj bardzo polecam osoby takie jak Ernest Mueller oraz James Wickett. Z obowiązkowych pozycji polecam książkę “gwiazd” w dziedzinie DevOps, czyli The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations, która naprawdę pomoże zrozumieć, o co chodzi w tym wszystkim. jeżeli chodzi o GitOps to bardzo interesująca pozycja to krótka książka GitOps Cloud-native Continuous Deployment napisana przez twórców tej metodologii.

I co najważniejsze — nie poddawaj się i działaj praktycznie. W ten sposób nauka przychodzi najłatwiej, a jak już wspominałem, troubleshooting, to jedna z domen DevOpsów, więc warto to poćwiczyć.

Julia: Dziękuję w imieniu wszystkich naszych czytelników za dosłownie złote rady!

O rozmówcy

Adrian Stawiany – Inżynier DevOps, który na co dzień zajmuje się projektowaniem i wdrażaniem rozwiązań informatycznych. Oprócz pracy zawodowej, pasjonuje go wiele różnych dziedzin. Jest aktywnym biegaczem, szczególnie zafascynowanym biegami przeszkodowymi OCR, które stanowią dla niego wyzwanie i źródło nieustającej motywacji – w tym roku za cel obrał sobie Runmageddon Ultra. Od jakiegoś czasu praktykuje zimne kąpiele tzw. “Cold plunges”. Poza tym, jego serce należy do motoryzacji, zwłaszcza japońskich samochodów, którymi pasjonuje się od lat. Osobiście zaangażowany w renowację swojego samochodu marzeń. W branży IT specjalizuje się w obszarach DevOps, GitOps oraz CI/CD, stale poszerzając swoją wiedzę i umiejętności. Po godzinach oddaje się swojej miłości do gier komputerowych, szczególnie World of Warcraft. Oprócz tego, jest dumny właścicielem Golden Retrievera, z którym spędza wiele czasu w spacerach i zabawie.

Idź do oryginalnego materiału