Od około 2 lat pracuję jako programista. Wydaje się oczywiste, że w dziedzinie tak szybko rozwijającej się, jak tworzenie oprogramowania, musisz poświęcić czas na naukę nowych technologii, ram itp.
Zawsze myślałem, że mogę przyjąć za pewnik, że jeśli muszę się czegoś nauczyć, aby rozwiązać problem w pracy, mogę poświęcić godziny na naukę tego również w pracy. Rozmawiałem jednak na ten temat z różnymi kolegami i mieliśmy odmienne opinie, najwyraźniej na granicy dwóch skrajności:
Twój pracodawca płaci Ci za wiedzę. Zostałeś zatrudniony za posiadanie wiedzy na temat wiedzy specjalistycznej wymaganej do wykonywania tej pracy, a jeśli dziedzina ta pojawi się tak, że musisz zdobyć więcej wiedzy, to naturalne, że robisz to w wolnym czasie.
I druga skrajna istota
Cokolwiek sprawia, że jestem bardziej produktywny w pracy na dłuższą metę, warto spędzać czas w pracy, ponieważ pracodawca w końcu z tego skorzysta. Dotyczy to oczywiście uczenia się nowych technik, ale także np. Uczenia się VIM, aby uzyskać szybsze działanie itp.
Ale nawet kiedy rozmawialiśmy o tym, jak długo spędzać czas na czymś z chłopakami zmierzającymi do drugiej skrajności, mieliśmy bardzo różne opinie, od „co godzinę w porządku” do „jak długo to zajmie”.
Czy Twoje miejsce pracy zachęca do uczenia się nowych umiejętności, a jeśli tak, jakie procesy muszą to zachęcać? Ile czasu spędzasz na nauce nowych rzeczy (a nie na pisaniu kodu produkcyjnego) w ciągu dnia jako programista?
źródło
Odpowiedzi:
Menedżerowie (podobnie jak ja) wahają się przed określeniem jawnych budżetów szkoleniowych. Zgodnie z prawem Parkinsona taki budżet zostałby wykorzystany, a nawet wyczerpany, niezależnie od faktycznych potrzeb w zakresie rozwoju wiedzy.
Jeśli po prostu połączyć się czas nauki pracy nad projektem i przechowywać go w rozsądnej proporcji do ogólnej pracy i swoimi całokształt osiągnięć, nikt nie wniosą sprzeciwu. Wartość procentowa jest różna i zależy od wieku, doświadczenia i obszaru pracy. Uważam, że od dwóch do 15 dni szkolenia rocznie jest normalne. Nowi pracownicy często potrzebują więcej.
W bardzo innowacyjnym środowisku odsetek nauki i badań jest zwykle wyższy niż zwykle. Mamy program mentorski dla młodszych programistów. Ilekroć ktoś zmienia miejsce pracy, oczywiście wymagane jest dodatkowe szkolenie.
Kwestia uczenia się jest kwestią samodzielnego marketingu . Żaden zespół nie tolerowałby członka, który jest stale niedostępny z powodu demonstracyjnego samokształcenia lub dużej nieobecności na egzotycznych szkoleniach. Staraj się być dobrze poinformowany, nie wykorzystując nadmiernych zasobów do nauki. Czas potrzebny na eksperymenty i naukę jest traktowany głównie dyskretnie. Czy osobiście zapłaciłbyś rzemieślnikowi za poznanie swojej marki samochodu?
W przypadku braków wiedzy, które są sprzeczne z opisem stanowiska , prywatne zaangażowanie byłoby oczywistością. Przykład: Jeśli masz być starszym programistą Java, nie powinieneś prosić o podstawowe szkolenie z języka Java.
źródło
Problem z robieniem rzeczy w wolnym czasie polega na tym, że musisz mieć trochę wolnego czasu. Spróbuj być ojcem z małym dzieckiem! Spróbuj pracować 14 godzin dziennie, a następnie znajdź czas. Poświęcenie czasu na naukę nowych umiejętności musi być zrównoważone czasem relaksu i doładowania. Uważam też, że czas na relaks pomaga mi rozwiązywać problemy w pracy. Dość często znajduję rozwiązania podczas zmywania!
W poprzednich firmach przedstawiłem pomysł handlu. Firma zapewniała nam godzinę w tygodniu na naukę i dopasowaliśmy ją do godziny własnego czasu. Rozsądne firmy powinny cieszyć się z możliwości zdobycia przez pracowników nowych umiejętności. W tej samej firmie inni programiści przedstawili pomysł sesji „brązowej torby”, podczas których spędzilibyśmy godzinę na lunchu, zapoznając się z nowymi pomysłami i umiejętnościami.
źródło
Zwykle planuję trochę więcej czasu na moje projekty, aby trochę się nauczyć. Widzę też spędzanie czasu na stronach takich jak Stackoverflow itp. Jako uczenie się nowych rzeczy do określonego zadania.
Nie mogłem kłaść palca na godzinę dziennie ani na takie zasady. Niektóre dni są bardzo produktywne i bardzo wydajne, a inne po prostu przeglądam książki lub czytam różne rzeczy. W większości „dni nauki” wchodzą w fazę planowania nowych projektów.
Mam też długą drogę do pracy, gdzie czytam o różnych rzeczach.
Zasadniczo po prostu spróbuj znaleźć to, co najbardziej Ci odpowiada, bez poczucia winy lub po prostu marnowania czasu w pracy. Tak długo, jak potrafisz wyjaśnić i uzasadnić czas spędzony na programowaniu, w większości przypadków powinno być dobrze. Myślę, że każdy programista lub inżynier powinien wiedzieć coś o swojej dziedzinie, a zwłaszcza wiedzieć, gdzie w razie potrzeby znaleźć głębszą wiedzę.
źródło
W książce The Clean Coder autor Robert C. Martin mówi, że potrzebujesz około 20 godzin tygodniowo, aby ćwiczyć i zdobywać nowe umiejętności. Jest to nadrzędne dla twojej pracy i Twoim obowiązkiem jest szkolenie się. Dlaczego? Ponieważ większość miejsc pracy nie będzie cię szkolić do następnej pozycji, a nawet obecnej pozycji. Większość miejsc pracy nie jest do tego przystosowana.
Jak mówi ten post na blogu ,
źródło
Nauka w pracy dzieli się na 3 główne kategorie:
numer 3 jest zdecydowanie najczęstszy - jeśli możesz uczyć się czegoś nowego w czasie pracy w firmie, bez zauważenia przez szefa, to idź. Pamiętaj tylko, że doskonalenie osobiste prawie nigdy nie jest częścią umowy o pracę. Otrzymujesz wynagrodzenie za wytwarzanie produktów dla swojego pracodawcy, a nie za szkolenie. Witamy w świecie bycia niewolnikiem płacowym :-)
źródło
Myślę, że ten problem jest zbyt różnorodny, by go streścić w kilku prostych regułach, dlatego postaram się podać kilka przykładów, aby pokazać, jakie jest moje zdanie. (Może jakiś scenariusz nie jest zbyt realistyczny, weź to jako abstrakcję).
Przypadek A:
Twój projekt: Opracuj jakąś aplikację biznesową J2EE
Twoja wiedza: Wiesz o „Java Enterprise”, ale po raz pierwszy naprawdę łapiesz się na to (oczywiście jesteś Junior)
Powinieneś: Prawdopodobnie poświęć dużo czasu na naukę najlepszych praktyk programistycznych i eksperymentowanie przed rozpoczęciem „prawdziwej pracy”
Przypadek B:
Twój projekt: Opracuj parser z jednego języka na inny, w mniej lub bardziej trywialny sposób.
Twoja wiedza: Jesteś specjalistą od języków formalnych / parsera z ogromnym doświadczeniem.
Powinieneś: Prawdopodobnie nie spędzać czasu (lub bardzo mało) studiując to, co już wiesz, lub ucząc się innych rzeczy
Przypadek C:
Twój projekt: Opracuj bibliotekę p2p dla Androida
Twoja wiedza: Wiesz o sieciach, gniazdach i protokole TCP, akurat nie znasz protokołu UDP
Powinieneś: poświęcić średni czas na naukę, czym jest protokół UDP i jak go używać, jeśli wiesz, że pomoże ci to w twoim projekcie.
Uważam, że w świecie IT pewien rodzaj uczenia się podczas pracy jest faktem naturalnym w większości przypadków, ponieważ fakt, że technologie wciąż ewoluują, i że nawet jeśli jesteś profesjonalistą, możesz nie znać każdej technologii jesteś zobowiązany do użycia lub zadania, które musisz wykonać zawsze na 100%, ponieważ naprawdę jest wiele .
Pracodawca powinien również zdawać sobie sprawę, że informatycy nie są wyroczniami, a wymaganie opracowania aplikacji internetowej do handlu elektronicznego nie jest tym samym, co zakup prysznica (jestem pewien, że wszyscy).
To powiedziawszy, biorąc pod uwagę, że pracodawca zawsze ma projekt do pracy, myślę, że prawdopodobnie powinien skoncentrować swoją naukę i eksperymenty na celu projektu, a przynajmniej na polu projektu, aby jego wiedza mogła się dostosować do jego osiągnięcia.
źródło
Znam ludzi w biurze, którzy od lat badają nowe technologie.
Jednak nie przedstawili niczego nowego, tak jak sądzę, ponieważ we wszystkim ludzie mają tendencję do nadużyć,
a tam, gdzie występuje nadużycie, jest pomiar kontroli.
źródło