Kusząca nauka programowania. Czy na pewno dla każdego?

Dodane:

Katarzyna Płachecka Katarzyna Płachecka

Udostępnij:

Pracownicy IT są drugą najbardziej zadowoloną ze swojej pracy grupą zawodową w kraju. Choć takie informacje podsycają apetyt na spróbowanie swoich sił w branży, przed podjęciem decyzji warto realistycznie ocenić swoje możliwości. Kodowania może nauczyć się każdy, ale czy jest to praca dla każdego?

Zdjęcie główne artykułu by stocksnap.io

Wśród Polaków pokutuje przekonanie, że programowanie wymaga wyjątkowych predyspozycji, w związku z czym nie jest to zawód dostępny dla wszystkich. W badaniu przeprowadzonym na zlecenie międzynarodowej sieci szkół programowania Codecool, 45 proc. ankietowanych jako główną barierę w rozpoczęciu nauki kodowania wskazało właśnie brak predyspozycji. Wśród osób w wieku 18-24 lata takiej odpowiedzi udzieliło aż 61 proc.

Teoretycznie lista predyspozycji niezbędnych do podjęcia nauki programowania wygląda całkiem zwyczajnie. Jednak to co decyduje o tym, czy ktoś odkryje w sobie żyłkę do kodowania zależy w głównej mierze od jego charakteru. Jak zatem można sprawdzić czy jest się odpowiednim kandydatem na programistę?

1. Znajomość języka angielskiego

Pierwszy warunek to umiejętność, którą względnie łatwo można zmierzyć – znajomość języka angielskiego. Bez tego ani rusz, jeśli poważnie zastanawiamy się nad rozwojem kariery w IT. Kluczowa jest zarówno umiejętność czytania ze zrozumieniem, jak i poprawne tworzenie treści. Ta pierwsza przydaje się zwłaszcza na etapie nauki. Znaczna część wysokiej jakości materiałów dydaktycznych jest dostępna tylko w języku angielskim. Bardziej zaawansowane opracowania dotyczące konkretnych języków czy rozwiązań, przydatne na etapie rozwijania umiejętności we własnym zakresie, również nie powstają zazwyczaj w innej wersji językowej. W codziennej pracy natomiast, istotne jest tworzenie zrozumiałej, anglojęzycznej dokumentacji i obszernych komentarzy do wdrożonego rozwiązania czy wprowadzonych zmian.

2. Logika i analityka

Trudniejsze do zmierzenia, ale wciąż w miarę „twarde kompetencje” potrzebne do programowania to umiejętności logiczne i analityczne. Jak twierdzi Jerzy Mardaus, mentor w szkole programowania, codzienna praca programisty polega na rozwiązywaniu problemów, dostrzeganiu potrzeb końcowego użytkownika oprogramowania, znalezieniu najlepszych rozwiązań i wprowadzeniu ich w życie dzięki właściwemu użyciu kodu. To wymaga często spojrzenia na pewne kwestie z różnych perspektyw i znalezienia najbardziej optymalnego wyjścia z danej sytuacji. Na etapie konstruowania kodu nieoceniona jest łatwość w dostrzeganiu zależności pomiędzy jego kolejnymi składowymi oraz dopasowanie kolejności tworzenia poszczególnych części, tak by całość dała zadowalający efekt.

3. Konsekwencja

Przechodząc do umiejętności zależnych bardziej od indywidualnego charakteru niż od wyuczonych kwalifikacji dochodzimy do konsekwencji. Programista powinien mieć dużo wewnętrznego samozaparcia, by doprowadzać rozpoczęte projekty do końca. Często od określenia potrzeb do przedstawienia gotowego, i w pełni sprawnego, rozwiązania upływa sporo czasu, a projekt wymaga wielu modyfikacji, czy to w zakresie określonych pierwotnie funkcjonalności czy też samego rozwiązania informatycznego. Podobnie jak w startupie, tak i w programowaniu, to finalny produkt, a nie MVP ma największą wartość. Konieczne są zawsze szczegółowe testy i sprawdzanie prawidłowego funkcjonowania stworzonego rozwiązania. Zajmuje to dużo czasu, pojawiają się kolejne wyzwania, dlatego upór i determinacja to wysoce przydatne cechy programisty.

4. Dociekliwość

Kolejną cechą przydatną w programowaniu, która wynika bezpośrednio z potrzeby rozwiązywania problemów jest dociekliwość i chęć ciągłego dokształcania. Konsekwencja i upór pchają w stronę ukończenia danego projektu. Jednak po drodze nie można zapomnieć o zadawaniu sobie pytań „jak?”, „dlaczego?”. Programista musi być otwarty na nowe informacje i poszerzać swoją wiedzę. Każdy dzień spędzony z kodem przynosi nowe wyzwania, wymaga użycia różnych metod i niestandardowego podejścia. Dodatkowo, biorąc pod uwagę dynamikę rozwoju branży IT, nie sposób się w niej utrzymać, nie poszerzając stale własnych horyzontów.

5. Motywacja

Ostatnia, lecz nie najmniej ważna cecha to motywacja. To od niej zależy czy nauka programowania zakończy się sukcesem i nową pracą, czy będzie po prostu kolejnym punktem w CV. Nikt za nas nie oceni, czy jesteśmy osobą, która do każdego nowego pomysłu podchodzi z zaangażowaniem i konsekwentnie realizuje go do końca, czy może mamy zazwyczaj słomiany zapał.

Lista wskazanych powyżej predyspozycji nie jest przypadkowa. Jak podkreśla Jerzy Mardaus, to właśnie pod tym kątem sprawdzani są zgłaszający się do szkoły adepci programowania. Te cechy oceniają też mentorzy, pracujący z kursantami. Doświadczenie pokazuje, że łatwiej jest nauczyć się obsługi programów i pisania algorytmów, niż wypracować w sobie konkretne postawy i zmienić sposób myślenia.

Przed podjęciem decyzji o rozpoczęciu kursu programowania warto też sprawdzić dokładnie na czym polega praca programisty, jakie są możliwości rozwoju i dostępne ścieżki. Najbardziej wiarygodni będą w tej kwestii znajomi, którzy już są w zawodzie. Jeśli jednak nikogo takiego nie ma w bliskim otoczeniu, zawsze można wziąć udział w wydarzeniach organizowanych przez społeczności entuzjastów programowania. Wiele z nich odbywa się właśnie z myślą o tych, którzy dopiero chcą rozpocząć swoją przygodę z kodowaniem. Na pewno warto skorzystać ze wszystkich możliwych opcji sprawdzenia kulisów tego zawodu. Im bardziej świadoma decyzja o rozpoczęciu nauki programowania, tym większa satysfakcja z osiąganych wyników.

Katarzyna Płachecka

Marketing Manager w Codecool Poland

Wcześniej związana była z agencją Symetria PR, w której zajmowała się public relations dla marek z branży nowych technologii i outsourcingu. Prowadzi także komunikację w social media i działania influencer relations dla sektora Horeca.