Kod

Juniorzy nic nie wiedzą: Dlaczego uważam, że to normalne

Juniorzy nic nie wiedzą: Dlaczego uważam, że to normalne

Darmowy kurs Pythona ➞ Mini kurs dla początkujących i doświadczonych programistów. 4 ciekawe projekty w portfolio, komunikacja na żywo z prelegentem. Kliknij i dowiedz się, czego możesz się nauczyć na kursie.

Dowiedz się więcej

Jestem samoukiem, bez formalnego wykształcenia i wszedłem do branży z dużymi lukami w wiedzy. Jednak dla początkującego nie jest to kluczowe. Najważniejsza jest chęć nauki i rozwoju. Kiedy zaczynałem karierę w 2013 roku, firmy chętnie zatrudniały nowicjuszy, ponieważ rynek IT dynamicznie się rozwijał i poszukiwał nowych talentów.

Ktoś przychodził i mówił: „Chcę zostać programistą”. Otrzymywał kilka zadań logicznych, a po ich pomyślnym rozwiązaniu był zatrudniany, szkolony, a następnie „sprzedawany” za granicę. W tamtym czasie kurs dolara znacznie wzrósł, co dało firmom pomagającym rosyjskim programistom w znalezieniu pracy w USA możliwość zarabiania prowizji od zagranicznych pracodawców. Stworzyło to korzystne warunki dla rozwoju branży IT w Rosji i przyciągnęło wielu nowicjuszy do programowania.

Jak trafiłem do IT

Na mojej pierwszej rozmowie kwalifikacyjnej byłem całkowicie nieprzygotowany i nie potrafiłem odpowiedzieć na ani jedno pytanie. W rezultacie zaproponowali mi książkę do przestudiowania i zalecili powrót po jej przeczytaniu. Posłuchałem tej rady, przeczytałem książkę i ostatecznie zostałem zatrudniony.

Moja pierwsza praca w firmie pozostawiła mieszane wrażenie. Zostałem zatrudniony do stworzenia aplikacji mobilnej, mimo że nie miałem żadnego doświadczenia w tej dziedzinie, a pracodawca o tym wiedział. Płatność była wypłacana dopiero po zakończeniu projektu, co stwarzało dodatkowe trudności. Był rok 2013 i w tamtym czasie wielu specjalistów spotykało się z nieuczciwymi praktykami rynkowymi. W rezultacie stworzyłem dużo kodu niskiej jakości, ale aplikacja działała, co wystarczyło pracodawcy.

W tamtym czasie nie wiedziałem nic o Gicie, nie umiałem korzystać z rekurencji i nie rozumiałem, dlaczego nie zawsze można użyć konstrukcji Try Catch. Nadawałem zmiennym proste nazwy, takie jak x1 i pisałem pliki z tysiącami linijek kodu. Nie miałem pojęcia, jak debugować kod za pomocą debugera, nie znałem punktów przerwania ani wielowątkowości. Ogólnie rzecz biorąc, moje umiejętności programistyczne były na zerowym poziomie. Jedyne, co mogłem zrobić, to odziedziczyć klasę „Dog” od klasy „Animal” i wyświetlić tablicę. Myślę, że wielu aspirujących programistów w tamtym czasie mierzyło się z podobnymi wyzwaniami, ucząc się w praktyce. Na uniwersytetach kształcenie akademickie często koncentrowało się na teorii, która okazywała się mało praktyczna. Stworzyło to lukę między wiedzą a praktycznymi umiejętnościami potrzebnymi do odniesienia sukcesu w IT.

Po zdobyciu dobrze płatnej pracy moja kariera nabrała rozpędu. Przydzielono mi mentora i przez pierwsze trzy miesiące pracowałem nad małym projektem pod jego uważnym okiem. To doświadczenie okazało się bezcenne i pomogło mi rozwinąć niezbędne umiejętności. W rezultacie mogłem przenieść się do Microsoftu, gdzie zostałem uznany za wykwalifikowanego programistę.

Pierwszy rok pracy to zawsze okres nauki.

Wymagania stawiane początkującym programistom uległy zmianie. Teraz potrzebują podstawowej znajomości języków programowania, zrozumienia algorytmów i struktur danych oraz biegłości w posługiwaniu się podstawowymi bibliotekami wybranego przez siebie stosu technologicznego. Mówiąc najogólniej, dzisiejsi początkujący programiści muszą umieć skutecznie wyszukiwać informacje i samodzielnie znajdować rozwiązania swoich problemów. Ta umiejętność pozwala im szybko dostosowywać się do nowych technologii i wymagań rynku, zwiększając ich konkurencyjność w branży IT.

Większość kandydatów na stanowiska juniorskie zna podstawowe narzędzia programistyczne i potrafi pisać kod. Chociaż często nie rozumieją logiki swojego kodu, jest to całkiem normalne w przypadku specjalistów początkujących. Sam spotkałem się z podobnymi trudnościami. Nawet jeśli poziom młodszych specjalistów rzeczywiście spadł, jak sugerują liczne artykuły, nie powinno to być powodem do niepokoju. Rekruterzy mogą łatwo odsiać kandydatów, którzy nie spełniają niezbędnych wymagań.

To zabawne słyszeć narzekania na brak wiedzy wśród specjalistów początkujących. Jak można było oczekiwać czegoś innego? Zazwyczaj zdobywają podstawową wiedzę podczas szkoleń, ale w pierwszym roku pracy często brakuje im umiejętności, aby ją zastosować – wciąż się uczą. Aby poczuć się jak prawdziwy programista, zintegrować się z branżą IT i zdobyć praktyczne doświadczenie, które pomoże im pomyślnie przejść rozmowę kwalifikacyjną, wymagany jest co najmniej rok pracy.

Niektórzy kandydaci przychodzą na rozmowy kwalifikacyjne po przeczytaniu zaledwie kilku artykułów na Habr, wierząc, że posiadają niezbędne umiejętności. Tacy kandydaci z reguły nie otrzymują ofert pracy. Z kolei absolwenci kierunków studiów i uniwersytetów rozumieją, jaką wiedzę i umiejętności muszą wykazać się podczas rozmowy kwalifikacyjnej. Ta świadomość pozwala im lepiej się przygotować i znacznie zwiększa ich szanse na zatrudnienie.

Podczas rozmów kwalifikacyjnych z początkującymi specjalistami skupiam się na cechach osobistych kandydata i to podejście nigdy mnie nie zawiodło. Pytam o umiejętności i wiedzę kandydata, ale nie przeprowadzam testów ani nie rozwiązuję zadań. Moim zdaniem zadania logiczne jedynie imitują rzeczywiste umiejętności i stanowią rodzaj kultu cargo. Doskonałym przykładem jest często zadawane pytanie o okrągłe włazy. Czy naprawdę można uzasadnić, w jaki sposób odpowiedź na to pytanie może pomóc w decyzji o zatrudnieniu?

Młodzi specjaliści są tani, co minimalizuje ryzyko związane z ich zatrudnieniem. Jeśli zdecydujesz się zatrudnić specjalistę z pensją 40 000 rubli miesięcznie, koszt ewentualnego błędu jest znikomy. Nawet jeśli jego pensja zostanie odjęta od mojego budżetu, nie odczuję tak poważnych konsekwencji.

Nie bój się zatrudnić kogoś, kto nie posiada niezbędnej wiedzy. Znacznie gorzej jest, gdy kandydat pilnie przygotowuje się do rozmów kwalifikacyjnych, ale ostatecznie nie znajduje pracy. Należy pamiętać, że szkolenia i rozwój pracowników to inwestycja w przyszłość firmy. Często nowi specjaliści wnoszą świeże pomysły i motywację, co może być korzystne dla rozwoju firmy. Dlatego ważne jest, aby ocenić nie tylko obecne umiejętności kandydatów, ale także ich potencjał uczenia się i adaptacji.

Podczas rozmowy kwalifikacyjnej staram się określić, czy kandydat jest zainteresowany pracą i nauką. Ważne jest, aby zrozumieć, czy jest skłonny poświęcić czas na studiowanie dodatkowych materiałów, aby doskonalić swoje umiejętności.

Podczas rozmów kwalifikacyjnych czasami spotykam kandydatów niezmotywowanych, pozbawionych inicjatywy i wymagających bezpośredniego wsparcia w rozwiązywaniu problemów. Jednak takie osoby zdarzają się rzadko. Ogólnie rzecz biorąc, większość kandydatów aktywnie poszukuje informacji, czyta i rozwija swoją wiedzę. Jednak napotykają na kolejny problem: po roku mogą odejść z firmy, aby otrzymać wyższą pensję gdzie indziej.

Zostanie juniorem lub absolwentem kursu to naturalny i pozytywny krok w kierunku udanej kariery w IT. Rozpocznij swoją karierę w IT od kursów Skillbox, które oferują wysokiej jakości szkolenia i praktyczne umiejętności. Zdobądź wiedzę i pewność siebie, aby rozpocząć karierę w jednej z najbardziej pożądanych dziedzin dzisiejszego rynku.