Artykuł

freeimages.com freeimages.com
mar 30 2016
0

Czy można być programistą aż do emerytury?

Różne badania dowiodły, że z wiekiem spada nasza sprawność umysłowa. Nie tylko więc się wolniej uczymy, ale również w życiu codziennym analiza niektórych sytuacji może nam zająć więcej czasu, co może mieć oczywiście przełożenie na naszą pracą.

Będąc programistą, bardzo często jestem zmuszony do pracy na wysokich obrotach. Czasem trzeba szybko reagować, lub po prostu dobrze zanalizować problem, by uniknąć potencjalnych konsekwencji. Praca w IT wymaga również ciągłego rozwoju - wystarczy spojrzeć na ilość frameworków JavaScript wypuszczonych na przestrzeni kilku ostatnich lat, by przekonać się, że słowo dynamiczny, bardzo łagodnie określa tempo zmian dziejących się w tym świecie. Pytanie więc - jak długo można tak funkcjonować?

Trudy bycia programistą

Ostatnio coraz częściej zastanawiam się, jak długo można być programistą? W tym roku skończę 30 lat, więc można powiedzieć, że jestem jeszcze młody (oczywiście jest to kwestia gustu;-), nie mniej jednak w branży spędziłem już kilka dobrych lat (nieprzerwanie pracuje od września 2008). Przeżyłem już sporo różnych trendów oraz kilka fal nowych programistów i bez wahania mogę stwierdzić, że branża rozwija się dynamicznie i tak jeszcze będzie przez bardzo długi czas. To po prostu taki truizm i stwierdzenie retoryczne.

Od początku 2009 roku siedzę w technologii .Net. Już w tym obszarze przeżyłem ogrom zmian, choć obecnie ten framework zdaje się być bardzo stabilny. Na przestrzeni lat kodowałem tutaj:

  • Strony Asp.Net
  • Strony Asp.Net MVC
  • Aplikacje Windows Forms
  • Aplikacje WPF
  • Windows Phone Silverlight
  • Universal Apps
  • Aplikacje konsolowe
  • Usługi sieciowe
  • Usługi systemowe

Z grubsza więc programowałem w pewnym sensie na każdy dostępny ekran. Nie piszę już tutaj o różnych innych językach/narzędziach, z których trzeba korzystać choćby przy okazji developmentu stron - w każdym bądź razie jest tego ogrom. Nie chcę się tu bynajmniej chwalić ilością poznanych technologii, ale raczej powiedzieć coś, co wszyscy w branży dobrze wiedzą - tutaj trzeba się cały czas uczyć. Jeśli chcesz się rozwijać i awansować, musisz po prostu przysiąść po godzinach i co jakiś czas zrobić jakiś testowy projekt, przeczytać książkę, czy obejrzeć video-tutorial. Za chwilę przyjdzie junior, który wychował się na C# 6.0 i będzie chciał spytać Ciebie jak np. użyć Null-conditional operator, czego Tobie jako seniorowi nie będzie wypadało nie znać.. inaczej będzie głupio i wstyd.

Jest oczywiście również cała otoczka. Przyjdzie kierownik i powie Ci, że Wasze oprogramowanie powinno się integrować z Tinderem, Instagramem, Snapchatem czy innym społecznościowym tworem, a Ty zaczniesz zastanawiać się co to wszystko jest.

Później powie: napisz to wszystko w Visual Studio Code używając .Net Core, bo podobno działa fajnie i szybko, a nie tak stary ociężały Asp.Net (MVC), którego dotychczas używałeś. A Ty spuścisz głowę i powiesz, że nie miałeś czasu się dokształcać ostatnimi laty..

Bonus za doświadczenie

Oczywiście to co napisałem powyżej, jest trochę przekoloryzowane. Większość firm nie wyrzuca z dnia na dzień całego napisanego softu i nie przerzuca się na .Net Core bo jest na topie w ostatnich miesiącach. Nie mniej jednak parcie na wiedzę i rozwój jest ogromne w tej branży i gdzieś trzeba z tyłu głowy sobie zdawać sprawę, że jeśli przez kilka ostatnich miesięcy (lat?), nie śledziłeś choćby pobieżnie nowinek technologicznych, to za chwilę może się okazać, że nie rozumiesz tego, o czym rozmawiają koledzy z zespołu.

Oczywiście to nie jest tak, że staż nic nie daje - daje i to całkiem sporo. Przede wszystkim masz doświadczenie z różnych obszarów, łatwiej dostrzegasz potencjalne problemy i widzisz szerzej. Jesteś w stanie projektować duże systemy, lub nawet ich fragmenty i umiesz operować abstrakcją. No dobra, ale czy tak opisana osoba dalej jest programistą?

Konkluzja

W moim odczuciu ciężko jest być programistą w dłuższej perspektywie czasu. Kończysz studia, programujesz, uczysz się i rozwijasz. Później jednak przychodzi stabilizacja życiowa. Kupujesz dom/mieszkanie, bierzesz ślub/wychodzisz za mąż, pojawiają się dzieci.. i w praktyce okazuje się, że pasja/praca musi się zmieścić w tych regulaminowych 8 godzinach i jedynym miejscem na potencjalny rozwój zostaje czas który jej poświęcasz. W takiej sytuacji trudno jest np. nauczyć się nowego języka od zera. Oczywiście jedziesz na doświadczeniu i idzie Ci to dużo szybciej niż studentowi, ale mimo wszystko...

W moim odczuciu stabilizacja wiąże się bardzo często z mimowolną zmianą stanowiska co wynika również z pozyskanego przez lata doświadczenia. Z czasem łatwo zostać team/tech leaderem, architektem, analitykiem, czy project managerem. Te stanowiska oczywiście wymagają dalszego rozwoju, ale przede wszystkim ważne jest tutaj doświadczenie zdobyte w pracy programisty.

Np. będąc architektem, jesteśmy w stanie wymyślić duży kawał systemu, pracując trochę na poziomie abstrakcji. Pojęcie o technologiach jest ważne, ale nie musimy znać każdego detalu. Ważne żeby cały system się spinał i miał spójną architekturę.

Oczywiście można być programistą długi czas - może nawet do emerytury, ale naprawdę trzeba pamiętać, że rozwój w tym fachu nigdy się nie kończy...

Data ostatniej modyfikacji: 27.04.2016, 22:44.

Podoba Ci się ten wpis? Powiedz o tym innym!

Send to Kindle

Komentarze

blog comments powered by Disqus