Hej,
Jako że ostatnio często nachodzi mnie poczucie, że w swojej karierze zawodowej dotarłem do rozdroża, powstanowiłem opisać swoją sytuację i wrzucić ten opis na forum. Może ktoś coś podpowie.
Mam 35 lat i kilkanaście lat doświadczenia. Jestem programistą z zamiłowania. Zaczynałem jeszcze w liceum. Później studia informatyczne i w trakcie studiów pierwsza praca. W obecnym miejscu pracy jestem już prawie 10 lat. Jest to pewne korpo we Wrocławiu.
Początkowo głównie programowałem w C++ na różne platformy, później trochę w Javie na Androida. Ostatnio zajmuje się przeważnie uczeniem maszynowym aka ML), gdzie jest dużo protoypowania w Pythonie.
Tu dochodzimy do sedna sprawy - otóż w ML zostałem niejako wrzucony i choć próbuję nadrabiać wiedzę we własnym zakresie, to mam poczucie, że ta moja wiedza wciąż jest fragmentaryczna, pełna uproszczeń i black boxów. Kojarzę czym jest regresja liniowa, logistyczna, jak działają DNNy itd. ale jakbym miał to zakodzić mając tylko numpy do dyspozycji, to pewnie poległbym z kretesem.
Z drugiej strony, mam wrażenie, że zajmowanie się projektami "proof of concept" gdzie często trzeba na szybko odpalić prototyp, przeskakuje się między technologiami, i nikt się zbytnio nie przejmuje dobrymi praktykami wytwarzania oprogramowania, sprawia, że podupadam jako programista. Nie mam czasu na wgłębianie się w nowe ficzery C++ czy dobre praktyki Pythona, bo co rusz cisną mnie terminy, a czas i zasoby pochłaniają próby ogarnięcia tajników ML.
Tak że mimo tego całego doświadczenia, nie czuję sie ani data scientistem i machine learning expertem, ani guru od architektury softu, znającym na wylot 5 języków programowania i wszystkie wzroce. Coraz częściej nachodzi mnie myśl, że nie pożenię jednego z drugim. Trzeba iśc albo w ML albo w software engineering. Niestety nie jestem genialny i zrozumienie matematyki lezącej u podstaw uczenia maszynowego to dla mnie duże wyzwanie. Zawsze lepiej szło mi chwytanie nowych technologii, bibliotek, jezyków programowania. I lubię to. Ale ponoć nie idzie programować przez całe życie zawodowe. Wraz z nabywaniem doświadczenia rośnie presja żeby iść w zarządzanie. Więc, kombinuję sobie, może jednak ten ML byłby tutaj wyjściem, żeby wymigać sie od liderowania, a jednocześnie nabyć cenne na ryku pracy twarde skille.... Taki oto mam dylemat.
Co zrobić, żeby było dobrze? :)
(A przynajmniej, żeby za kilka kolejnych lat nie obudzić się w zawodowej czarnej dziurze).