Nowy rok to nowe postanowienia, nowe plany, ale też nowe wyzwania. Jeżeli jednym z twoich celi na ten rok jest bycie lepszym programistą, to pewnie zastanawiasz się, jak rozwijać karierę programisty. Jeżeli tak, mam dla Ciebie 8 rad, które w tym pomogą. Zapraszam do lektury.

Stwórz swój własny projekt na boku

Znajdź pomysł, który łączy programowanie z tym, co lubisz, i zacznij pisać projekt. Niech nie będzie łatwy, to ma być projekt, na którym będziesz się uczył i testował nowe rozwiązania. Np. jeżeli lubisz łyżwiarstwo, to możesz np. stworzyć stronę do wspólnego zapisywania się na wyjście na łyżwy, a z czasem dodać np. mapy, gdzie jest lodowisko, konta użytkowników itp. Poświęcaj projektowi co najmniej 2 godziny tygodniowo, a na pewno twoje umiejętności programistyczne wzrosną!

Sztuka tworzenia oprogramowania

Poza takim zwykłym programowaniem warto nauczyć się sztuki tworzenia programowania. Pod tym enigmatycznym wyrażeniem kryje się po prostu sposób, jak dobrze programować, niezależnie od języka programowania. Uniwersalne prawdy, które wychowały pokolenia programistów. Wbrew pozorom wiedzieli, co robią, dlatego ty też im zaufaj.

Aby poznać sztukę tworzenia oprogramowania, na początek poznaj:

  • Clean architecture i ogólnie, jak się tworzy architekturę oprogramowania
  • Wzorce projektowe, od wzorców MVVM czy MVC aż do Pyłku, Strategii czy Singletona
  • Najlepsze praktyki, np. SOLID, KISS, DRY itd. Krótkie ich wyjaśnienie znajdziesz na https://rwbit.pl/7-zasad-programowania/

Skup się nie tylko na kodzie

Poza programowaniem jako takim powinieneś się skupić też na procesie tworzenia i dostarczania kodu oraz na tworzeniu jakościowego kodu. Dlatego zacznij uczyć sie testów. Wiem, jak to brzmi, testy to coś, o czym wszyscy rozmawiają, ale mało kto robi w pracy. Właśnie dlatego rób to w domu, na swoim projekcie. Pisz jak najwięcej testów, nawet jeżeli nikt tego od Ciebie nie wymaga. Dzięki temu nie będziesz miał problemów, gdy zmienisz prace i ktoś w końcu zacznie tych testów wymagać, oraz zwiększysz swoje umiejętności.

Poza testami poznaj, czym jest Continuous Integration (CI) oraz Continuous Delivery (CD). Te dwa terminy często się przewijają przez programowanie, więc warto je znać. Dalej, jak już jesteśmy obok CI/CD, poznaj automatyzację i jak się automatyzuje np. testy, właśnie CI/CD, budowanie projektu itd. Co prawda te rzeczy konfiguruje się raz, ale warto, żebyś wiedział jak. Pomoże ci to zrozumieć lepiej działanie i firmy, i kodu, nie mówiąc już o szybszej naprawie potencjalnych problemów.

Warto też skupić się na User Experience (UX), czyli na “doświadczeniu użytkownika”. Pod tym pojęciem rozumiem po prostu odczucie użytkownika twojej aplikacji. to, że ty wiesz co i jak działa, bo to pisałeś, nie znaczy, że dla zwykłego użytkownika to tez jest logiczne i proste. Do tego dochodzi szybkość ładowania strony, jak strona wygląda, jak się jej używa, walidacje, komunikaty błędów itd. Czyli odczucia użytkownika po wejściu i używaniu strony.

Umiejętności miękkie

Ile by się o tym nie mówiło, programista mający tylko umiejętności twarde jest dobry, ale nie najlepszy. to właśnie umiejętności miękkie, jak praca w zespole czy komunikatywność pozwalają jeszcze lepiej dowozić projekty i tworzyć jeszcze lepsza jakość kodu. to umiejętności miękkie jak poczucie własnej wartości i sztuka negocjacji pozwalają na wynegocjowanie lepszych zarobków. Umiejętność pytania (tak, to też umiejętność) pozwala nie tracić czasu i szybciej sie uczyć. Z tymi, oraz wieloma innymi umiejętnościami miękkimi programiści mają sporo problemów, dlatego w nowym roku postaraj się wybrać i rozwinąć co najmniej 2 z nich. Na pewno się to opłaci!

Wróć do podstaw języka

Frameworki są kuszące, i często ich znajomość stanowi o dostaniu się do nowej pracy, jednak nie zapominaj o podstawach. Jeżeli jesteś frontendowcem, to wiedza, jak działa przeglądarka, podstawy JSa, zasięgi, asynchroniczność, promisy itd. to podstawa. Frameworki często to opakowują, więc 90% czasu nie potrzebujemy zagłębiać się w podstawy. Zostaje jednak te 10% zadań, które są najtrudniejsze. Właśnie tam dogłębna wiedza z zakresu podstaw danego języka programowania jest najpotrzebniejsza i daje najwięcej. Nie bądź jak ci, którzy umieją jQuery, ale nie JavaScript. Naucz się podstaw!

Zrozum biznes w twoim projekcie

Postaraj się w pełni zrozumieć swój projekt, nie tylko od strony kodu. Zrozum, dlaczego jest robiony, jaki ma problem rozwiązać, jak może pomóc użytkownikom, jak ma działać, czego użytkownicy tak naprawdę chcą, jaka wiedza idzie za projektem itd. Z jednej strony wiedza, że projekt ma rozwiązać problem X, pozwala lepiej dostosować do niego rozwiązanie już na etapie programowania. Z drugiej strony, kiedy robimy coś, nie wiedząc po co, tracimy motywację i chęci do pracy. Tak więc warto dowiedzieć się, po co robisz to, co robisz.

Rozwijaj projekty open source

Projekty open source pozwolą ci pisać kod w już rozwiniętym projekcie. Kiedy zaczynamy nasz własny projekt, minie sporo czasu nim będzie na tyle rozbudowany i duży, żeby móc testować niektóre rozwiązania. Problem ten rozwiązuje praca z dużymi projektami open source. Pozwala to na naukę rzeczy, których na swoim projekcie możesz nie mieć.

Kolejna sprawa – dużo mentorów, którzy ocenią twój kod, dadzą cenne wskazówki i komentarze. Dzięki nim będziesz się uczył dużo szybciej niż samemu, a to cenna rzecz. Pamiętaj jednak, żeby faktycznie się uczyć i nie powtarzać tych samych błędów. Mentorzy też mają swoje zadania i mogą stracić cierpliwość, sprawdzając kolejny raz ten sam błąd.

Bądź na bieżąco z trendami, ale nie skupiaj się tylko na nich

Poświęcaj 20% czasu na naukę i sprawdzanie nowości, a 80% na naukę tego, w czym obecnie pracujesz. Zawsze fajnie skupiać się na nowościach, ale trzeba też pamiętać o obecnej pracy. Więcej skupienia na niej pozwoli ci szybciej robić zadania, mieć więcej czasu dla siebie, a być może również załatwi ci podwyżkę. Nowości zaś pozwolą rozwijać się oraz poznawać nowe podejścia i rozwiązania. Niektóre z nich może nawet dodasz do obecnego projektu, dzięki czemu nauka nowości zamieni się na naukę projektu :)

Podsumowanie

W tym roku masz wiele rzeczy do zrobienia, jednak uwierz mi – naprawdę warto! Nauka powyższych rzeczy sprawi, że bardzo szybko i skutecznie rozwiniesz swoją karierę w IT.

Jeżeli masz jakieś pytania, zapraszam do komentarzy, a jeżeli uważasz ten wpis za wartościowy, podziel się nim ze znajomymi.