Fascynujący rynek rekrutacji programistów nadal potrafi zaskoczyć. Kilka dni temu zaskoczył mnie tym, jak różnie może być rozumiane pojęcie programistycznego seniority. Czy raczej - w tym przypadku - juniority.
Wszystko zaczęło
się od postu mojego kolegi z zespołu rekrutacji, który w
jednej z programistycznych grup facebookowych zamieścił ogłoszenie, w którym
moja firma (7N) poszukuje osoby na stanowisko Junior .NET Developera, a wymaganym
minimalnym doświadczeniem są 3 lata w programowaniu.
Post – sądząc po komentarzach i reakcji na nie – wśród niemałej części osób wzbudził kontrowersje, a jej powodem
było to, że osobie z min. 3-letnim doświadczeniem proponujemy stanowisko
zaledwie juniora. Jak śmieliśmy?!
Dyskusję pozwoliłem sobie - jak się miało okazać - zamknąć takim komentarzem:
I właściwie
byłoby po sprawie, gdyby nie to, że epizod ten jest jednak ciekawą ilustracją
fenomenu programistycznego rynku pracy, kolejnym znakiem czasu.
Gdy kilka dni
temu jedna z firm rekrutacyjnych zarekomendowała nam programistę, który – mając
1.5 roku doświadczenia programistycznego – pracował na stanowisku Senior
Developera, nie zdziwiłem się już zbytnio. Na zwariowanym rynku dojdzie do
jeszcze niejednej zwariowanej sytuacji. Czekam na dzień, w którym otrzymam CV
osoby mającej w nazwie stanowiska „programista”, a dopiero wybierającej swój pierwszy
w życiu język programowania. Czy może już istnieją takie CV?
Tak, wiem, że są
super zdolni trzylatkowie, którzy w ciągu swoich trzech lat pracy nauczyli się
więcej i znaczą rynkowo więcej niż niejeden dziesięciolatek. Patrząc jednak
globalnie – i statystycznie – są oni wyjątkami. To po pierwsze.
A po drugie (i
ważniejsze), doświadczony programista to – w moim i 7N rozumieniu – nie tylko
koder. To również człowiek wnoszący wartość dodaną od strony dobrej znajomości
dziedziny biznesowej, której dotyczy projekt. To ktoś mający świadomość różnych
uwarunkowań sukcesu projektu czy różnych punktów widzenia jego uczestników i
interesariuszy. W tym aspekcie nie można osiągnąć seniority inaczej niż przez zdobyte w różnych projektach, okupione umownymi bliznami, mierzone w latach - d o ś w i a d c z e n i e.
A i w obszarze
wyłącznie technicznym programista nierówny programiście. Jeden będzie w
stanie sprostać wyzwaniom wydajnościowym i integracyjnym w dużych systemach,
inny nie. Jeden będzie w stanie (dobrze) wybrać technologie, narzędzia i
metodykę, inny nie. Jeden będzie w stanie (mądrze) wyznaczyć standardy
developerskie dla zespołu i w projekcie, inny nie.
Ci pierwsi są w stanie robić
to, czego nie są jeszcze w stanie robić ci drudzy dzięki m.in. d o ś w i a d c z e n i u.
(Zainteresowanych
rzetelnym, metodycznym podejściem do różnicowania poziomów zaawansowania zadań
na stanowiskach IT zachęcam do zapoznania się z frameworkiem SFIA: LINK).
Sprawdziłem z
ciekawości, kim był autor pierwszego, najbardziej popularnego komentarza pod wspomnianym na początku
postem, oburzony tym, że stanowisko osoby z 3-letnim doświadczeniem można
nazwać Junior.
Otóż jest
programistą i ma dziś trzy i pół
miesiąca komercyjnego doświadczenia w programowaniu. W nazwie stanowiska... Junior. Jeszcze.
_______