Portfolio programisty 2016-12-19

Dlaczego programista nie powinien zapominać o portfolio? Po co je dołączać, jak powinno wyglądać i co w portfolio tak naprawdę się ocenia?

 

Dlaczego portfolio u programisty jest ważnym elementem aplikacji?  

 

Pierwszym i podstawowym etapem weryfikacji kompetencji programisty jest CV.  Jednakże z perspektywy rekrutera nie mniej istotnym dokumentem jest jego portfolio. Daje ono osobie weryfikującej aplikację pełniejszy obraz doświadczenia kandydata. Jest rozszerzeniem informacji zawartych w CV - mówi Agnieszka Grzelka - Junior Resource Project Manager w CONNECTIS_.

 

W wielu firmach oczekuje się od programisty przesłania portfolio zamiast listu motywacyjnego, (którego od programistów prawie się już nie wymaga), bo daje ono o wiele więcej informacji.

 

Z perspektywy pracodawcy portfolio:

  • Pokazuje z jakimi typami projektów programista miał do czynienia,
  • W jaki sposób rozwiązuje problemy (jakie strategie stosuje),
  • Jak podchodzi do programowania,
  • Jaki jest pisany przez niego kod (schludny, czysty, zoptymalizowany, efektywny czy chaotyczny, pełen błędów, niezoptymalizowany),
  • Czy zna najnowsze technologie i rozwiązania i z nich korzysta (dlatego ważne jest zamieszczanie w portfolio dat, kiedy dane projekty były realizowane),
  • Czy zna dobrze daną technologię czy kilka „po łebkach”.

Z perspektywy pracownika portfolio:

  • Pozwala mu uporządkować doświadczenie i przedstawić je pełniej niż w CV,
  • Pokazuje realne doświadczenie i wiedzę (co pozwala lepiej dopasować programistę do profilu firmy bądź projektu, a to jest szczególnie ważne w firmach zajmujących się rekrutacją IT. Dzięki temu programista dostanie się do firmy, w której faktycznie ma szansę sprawdzić się, rozwijać bądź mieć zadania, które będą wyzwaniem),
  • Jasno pokazuje, co programista umie, a czego nie robił (co zwrotnie owocuje oszczędzaniem czasu obu stron. Programista nie jest zapraszany na spotkania, na stanowiska, na które byłby za słaby bądź nudziłby się na nich),
  • Jest silną przewagą konkurencyjną, bo nadal bardzo mało programistów ma własne portfolia (podkreśla to Agnieszka Grzelka z CONNECTIS_ mówiąc: „W praktyce, jeśli w ofercie pracy nie ma jasnej informacji o wymaganym portfolio, niewielu kandydatów aplikując na ogłoszenie o pracę przesyła swoje portfolio. Najczęściej przesyłane jest samo CV lub jeden wspólny dokument łączący w sobie elementy CV oraz portfolio.”
  • Jeśli jest stale dostępne online, może być źródłem ciekawych ofert pracy / współpracy.

Co zamieszcza się w portfolio (i jak)?

 

Kandydat w portfolio może zamieścić bardziej szczegółowy opis realizowanych przez siebie zadań, linki odsyłające do wykonanych projektów, aplikacji, czy też stron WWW. Nie należy zawierać w portfolio wszystkich projektów, w których uczestniczył specjalista. Przed jego stworzeniem należy zebrać wszystkie prace i przeprowadzić selekcję. Celem portfolio jest przedstawienie najważniejszych projektów, takich, które najlepiej oddają styl pracy programisty, czy też takich, które pasują do oferty pracy, na którą kandydat aplikuje. Dobre portfolio powinno składać się z: kilku słów o sobie, prezentacji prac i projektów oraz ich przykładów w różnych formach, rekomendacji od klientów czy współpracowników, linków do dobrze uzupełnionych profili na portalach społecznościowych. – mówi Agnieszka Grzelka z CONNECTIS_.

 

Ważne, by tworząc portfolio pomyśleć o tym, by zaprezentować swoje kompetencje wszechstronnie. Dobrym rozwiązaniem jest pokazanie rysu historycznego (pozwala ocenić to, jak programista się rozwija) oraz potraktowanie każdego przykładu problemowo (jakie było zadanie, jak zostało rozwiązane i jakie były tego efekty).

 

Gdzie zamieszcza się portfolio?

 

Agnieszka Grzelka radzi: Portfolio może mieć formę dokumentu, prezentacji, własnej strony internetowej lub innych wersji online w specjalnie do tego przeznaczonych serwisach, platformach lub portalach społecznościowych. Tworząc portfolio należy zadbać także o jego stronę wizualną oraz o to, aby informacje były prezentowane w ciekawy i przejrzysty sposób.

 

Popularne miejsca dla programistów to GitHub (serwis hostujący repozytoria, który pierwotnie używany był jako hosting programów open source i w większym stopniu jest społecznością niż platformą do hostowania portfolio, niemniej jednak często jest tak właśnie używany. Przy wykorzystywaniu GitHub jako portfolio warto pamiętać, że jest to open source, zatem umieszczać można tam tylko kod mając do niego autorskie prawa majątkowe). W internecie znaleźć można dziesiątki serwisów do tworzenia portfolio, a inwestycja we własną stronę www to zaledwie kilkadziesiąt złotych rocznie (hosting + domena).

 

Co rekruterzy oceniają w portfolio programisty?

 

Przede wszystkim warto pamiętać, że to nie rekruterzy czy HRowcy, ale specjaliści IT (inni developerzy) dokonują analizy i oceny dostarczonego portfolio (oczywiście niekiedy specjalistą HR może być również developer). Agnieszka Grzelka wyjaśnia: W CONNECTIS_ portfolio wykorzystywane jest najczęściej wtedy, kiedy klient, dla którego rekrutujemy wymaga jego przedstawienia. Sprawdza się ono w szczególności w przypadku grafików oraz frontend lub web developerów. Dla rekruterów stanowi ono jednak tylko dodatkowe źródło informacji, na pierwszym miejscu stawiane jest CV. Najczęściej zatem analiza portfolio jest dopiero drugim elementem rekrutacji bądź jest prowadzona równolegle, wraz z analizą CV i służy do określenia poziomu biegłości w danym języku bądź technologii.

 

Jak wykorzystuje się portfolio podczas rozmowy rekrutacyjnej?

 

Warto pamiętać, że portfolio programisty nie jest wykorzystywane jedynie do oceny tego, czy zaprosić  programistę na rozmowę kwalifikacyjną, ale również podczas spotkania rekrutacyjnego. Analizuje się wtedy przedstawione przez programistę projekty i rozwiązania, by sprawdzić m.in., czy potrafi przyjmować krytykę (i nie będzie robił problemów przy code review), uczy się i rozwija (i w związku z tym obecnie kod programu, który pisał 4 lata temu napisał by lepiej), faktycznie samodzielnie napisał dane fragmenty, czy szuka optymalnego rozwiązania czy też poprzestaje na pierwszym algorytmie. Przesyłając portfolio wraz z CV należy spodziewać się szeregu pytań o projekty podczas rozmowy kwalifikacyjnej. Często pytania dotyczą tego, które projekty były dla programisty najbardziej interesujące, czy coś by teraz poprawił w danym kodzie, dlaczego wybrał takie, a nie inne rozwiązania.

 

Portfolio programisty a prawo autorskie

 

Czy programista może bez problemu przedstawić w swoim portfolio kod źródłowy wykonanych przez siebie prac? Wszystko zależy od umowy z osobą, dla której kod ten był tworzony. Nieco inne zasady będą obowiązywać przy umowie o pracę, a inne przy umowie cywilnoprawnej. Ważne jest również to, czy w umowie masz klauzulę poufności czy nie.

 

Przy umowie o pracę autorskie prawa majątkowe do tworzonych przez pracownika w ramach stosunku pracy dzieł (czyli również kodu) przechodzą automatycznie na pracodawcę. W związku z tym istnieje stanowisko, że pracownik – bez zgody pracodawcy – takimi projektami nie powinien się chwalić. Z drugiej jednak strony, jeśli publikujemy prace tylko w celu zaprezentowania swoich umiejętności twórczych, to sąd może to uznać za realizację autorskich praw osobistych (a te są niezbywalne). W związku z różnymi możliwościami interpretacji, które w przypadku kodu programistycznego mogą zależeć również od tego, jakie fragmenty zostały udostępnione, znacznie bezpieczniej jest posiadać wyraźną zgodę pracodawcy na umieszczanie fragmentów kodu w portfolio i ich publiczne udostępnianie. Dobrą praktyką jest też umieszczanie w portfolio zrzutów z ekranu, a nie całościowego kodu (bądź jego istotnych fragmentów pozwalających na skopiowanie np. całej funkcjonalności).

 

Umowy cywilne – czyli aplikacje pisane na zlecenie czy w ramach umowy o dzieło to już inna historia. Tu warunki udostępniania dzieła powinna regulować umowa, w której można zawrzeć sposób prezentacji czy pokazywania dzieła.

W obu przypadkach z publikowaniem informacji w portfolio warto się wstrzymać, jeśli masz  podpisaną klauzulę poufności. W takim przypadku  najbezpieczniej jest jedynie opisać projekt (dany problem) i sposób jego rozwiązania, ale tak by nie możliwe było zidentyfikowanie zleceniodawcy bądź konkretnej aplikacji.

 

Przy publikowaniu portfolio oraz opisywaniu własnego kodu nie wolno zapominać o innych współtwórcach. Nie trzeba ich wymieniać z nazwiska (chyba, że w umowie są odpowiednie zapisy), ale może być wymagana ich zgoda. Poza tym portfolio powinno odzwierciedlać Twoje umiejętności i prezentować to, czego ty potrafisz dokonać (a nie inni, współpracujący z Tobą koledzy). 


Przeczytaj także:

Skomentuj