Temat: Jakość ogłoszeń o pracę
Od razu zadajmy sobie pytanie - aspirujemy do bycia specjalistą w danej branży, czy wystarcza nam (bo może wystarcza?) bycie rzemieślnikiem. Nic na siłę.
Na stanowisko specjalisty czy tam seniora nie idziemy po to, żeby przerabiać elementarz "Hello world", prawda? Czym innym jest "znajomość wyrażeń regularnych", bo napisało się w życiu kilka regexów do walidacji maila czy numeru telefonu, a czym innym bycie specjalistą od wyrażeń regularnych. Czym innym jest "znajomość Javy", bo napisało się aplet na stronę, a czym innym siąść do projektu J2EE (EJB, Hibernate, Jboss/Tomcat, Struts, RichFaces, A4J, Maven) i swobodnie się w tym poruszać. Czym innym jest "znajomość C++", bo napisało się kiedyś "odwracanie stringa na wskaźnikach", a czym innym napisanie sterownika do komunikacji z jakimś urządzeniem. Podobnie, jak czym innym jest napisanie programiku obliczającego miejsca zerowe trójmianu kwadratowego, a czym innym programistą procedur numerycznych. Czym innym jest "znajomość SQLa" (SELECT * FROM Pracownicy p WHERE p.Wiek > 30 ...), a czym innym napisanie w nim migratora danych między systemami partnerów bądź doraźnego workarounda do "systemu obiegu zleceń", póki produkcja nie dopisze modułu w C#.
.NET to także wiele bibliotek i narzędzi, które chociaż są "third party", to stały się standardem. A są rozbudowane i nie pozna się ich po jednym tutorialu na CodeGuru. NAnt, ReSharper, NHibernate/EF, Reporting/Analysis Services, PostSharp i wiele, wiele innych (literatura blogów Maćka Aniserowicza czy Wielkiego Ayende pozwala się zorientować w rozmiarze zagadnienia) plus to, co podał Bogdan. Ba, wystarczy siąść do głupich XSDków i generowania z nich parserów czy XMLPath bardziej złożonego, niż "/bookstore/book/title", by mieć sporo do nauki. A przecież "iksemela to dziś nawet dziecko zna".
Nie jest problemem nauczenie się nowych technologii w stopniu, by coś tam doraźnie nadłubać. Większość z nas od czasów studiów przebrnęła przez kilka, a może i kilkanaście języków i technologii, prawdopodobnie od assemblerów różnego rodzaju, przez C (+WinAPI), VB, Pascale, Javy, DHTML, MFC, etc. Większość z nas operuje w pracy kilkoma technologiami, np. .NET, ActiveX, Flash, XHTML, Python, Perl, Ruby, ORMy etc. Ale jednak koncentruje się wokół pewnych zagadnień i wykorzystuje pewien wycinek technologii.
Dlatego jak mi np. pisze w ogłoszeniu "wymagana biegła znajomość LINQ i NHibernate", to - chociaż korzystam od lat z NH i Linq, nie będę tam aplikował, bo wiem, że polegnę na AC/DC albo moje braki szybko wyjdą i będę musiał siedzieć po nocach, by nadrobić zaległości. Mam pewien zakres zagadnień, w których mogę spokojnie startować bez wstydu i strachu i to mi wystarczy. A jak firma nie podaje takich informacji w ogłoszeniu - to skąd mam wiedzieć? W razie czego mam nieprzyjemne doświadczenie, straciłem czas, firma także.
Dalej - każdy z nas ma zapewne swój "toolbox", gromadzony przez lata (bibliteki, narzędzia, fragmenty kodu, baza wiedzy), który pozwalał mu dotychczas rozwiązywać skutecznie różne problemy. Jeśli z ogłoszenia wynika, że możemy go rozwinąć, to fajnie. Jeśli nie - zadajmy sobie pytanie, czy wolimy rozwijać dotychczasowe umiejętności w innej pracy, czy zarzucić tamto (po pół roku nie korzystania z tego, czego się uczyliśmy, będziemy do tyłu - gwarantowane), a rzucać się głową w coś kompletnie nowego.
Poza tym życie programisty to nie tylko język i narzędzia. To także branża.
Jednemu nie robi mu różnicy, czy będzie pracował przy ERP, czy przy bankowości, czy przy medycynie. Ale niektórzy jednak specjalizują się w aplikacjach z określonej dziedziny i gromadzą wiedzę dziedzinową. Nie są już tylko koderami, ale często idą level wyżej na developerów (projektowanie + kodowanie), architektów i inżynierów, gdzie już ta wiedza jest potrzebna, a często nieoceniona. A nawet, jeśli są tylko szeregowymi programistami, to wiedzą, że znając HL7 lepiej iść jednak do pracy przy aplikacjach medycznych, niż transportu morskiego, bo większa szansa, że wykorzystają posiadaną wiedzę. Albo po prostu finanse ich nudzą i praca przy takich zagadnieniach nie jest dla nich żadną przyjemnością. Student może odpowiadać na każde ogłoszenie "przyjmiemy programistę .NET". Ale ktoś, kto trochę już nocy i życia osobistego poświęcił na specjalizację, będzie szukał możliwości rozwoju w tym właśnie kierunku. A dopiero jak nie znajdzie - wykorzysta swój "informatyczny potencjał" i zmieni branżę - to nam daje wykształcenie informatyka i pasja naszego zawodu, że poradzimy sobie w razie czego i bezrobotni nie będziemy. A póki co specjalizujmy się tam, gdzie są pieniądze i co nas bawi.
A od pewnego momentu w karierze to ostatnie także zaczyna być istotne.
Adrian Olszewski edytował(a) ten post dnia 30.06.11 o godzinie 12:50