Programuję C # profesjonalnie od ponad 4 lat. Przez ostatnie 4 lata pracowałem dla kilku małych / średnich firm, od „agencji internetowych / reklamowych”, małych branżowych sklepów z oprogramowaniem do małego startupu. Zajmuję się głównie „aplikacjami biznesowymi”, które wymagają użycia języków programowania wysokiego poziomu (wyrzucanie śmieci), a moje ogólne doświadczenie było takie, że wszystkie moje prace mogły być bardziej profesjonalne. Wiele rzeczy zostało zrobionych niepoprawnie (w pośpiechu), głównie ze względu na fakt, że ludzie zawsze chcieli czegoś „teraz” i przy jak najmniejszej ilości wydawanych pieniędzy. Nadal zastanawiałem się, czy mógłbym pracować dla większych firm lub firmy, która lepiej nadaje się dla programistów, czy gdzieś tam mam pieniądze i czas, aby naprawdę zbudować coś długoterminowego i łatwiejszego w utrzymaniu. Mógłbym bardziej cieszyć się w mojej karierze. Nigdy nie miałem „mentora”, który prowadziłby mnie przez moją 4-letnią karierę. Jestem prawie programistą blogów / google / samoukiem innym niż mój licencjat z informatyki.
Zauważyłem też inny problem, że większość tak zwanych „starszych” programistów w „moim środowisku pracy” naprawdę nie jest tak mądra. Są „starsi” tylko dlatego, że od dawna są programistami, ale kod, który piszą lub podejmowane przez nich decyzje są absolutnie bzdurne! Nie chcą się uczyć, nie chcą być lepsi, po prostu chcą zarabiać i robić to, co im kazano, co ma sens, a większość z nas jest taka. Może dlatego są tam, gdzie są teraz. Ale nie chcę być taki jak oni, chcę być lepszy. Wpadłem w stan psychiczny, że nie zamierzam już być programistą dla mojej przyszłej kariery. Zacząłem myśleć, że może są lepsze rzeczy do pracy. Im więcej blogów czytam, tym więcej „najlepszych praktyk” próbowałem, tym bardziej czuję, że odchodzę od „mojej rzeczywistości”. Ale nie jestem świetnym programistą, inaczej nie sądzę, że jestem teraz. Myślę, że 4-5 lat to etap, który może być krokiem do przodu w karierze lub wyjściem z miejsca, w którym się znajdujesz.
Chciałem tylko usłyszeć, co inni mają do powiedzenia na temat tego, o czym wspomniałem powyżej i czy doświadczyłeś podobnej sytuacji w swojej poprzedniej karierze programistycznej i jak sobie z tym poradziłeś. Dzięki.
źródło
Odpowiedzi:
Otwierasz bardzo interesujące pytanie. Z całego serca się z tobą zgadzam. Dokonałem podobnych obserwacji.
Programuję profesjonalnie już od kilku lat i zauważyłem, że liczba dobrych programistów, świetnych programistów, którzy kochają swoją pracę i potrafią to robić z jakością i pasją, jest prawie zerowa. Prawdopodobnie spotkałem tylko jedną osobę, która mogłaby mnie czegoś nauczyć. Większość tego, czego wiem, nauczyłem się sam, czytając książki i fora, pytając na forach i szukając w Google myśli o objawieniach.
Po chwili nie żałuję tak bardzo.
Opcje nauki w środowisku pracy często mogą być ograniczone. Nie zaczynasz rzeczy. Nie skończysz ich. Nie projektujesz, nie poprawiasz, nie refaktoryzujesz, nie myślisz o architekturze, po prostu kodujesz i hakujesz rzeczy razem. Tak działa większość sklepów. Nie tylko nie uczysz się niczego, ale bardziej prawdopodobne jest, że nauczysz się głównie złych rzeczy, jak NIE tworzyć oprogramowania. Ciągle widzę wokół siebie przerażające rzeczy, wszystkie te anty-wzory, o których słyszałeś. Co gorsza, jestem zmuszony to zrobić sam.
Nie wiem, jak to się stało, ale udało mi się jakoś zbudować barierę wejściową. Pozostaję otwarty, słucham i jeśli widzę potencjał do samodoskonalenia, badam i może przyjmuję jakąś technikę lub pomysł. Ale żaden BS nigdy się nie przedostanie. Przez długi czas pracowałem w źle prowadzonych projektach, ale nie zastosowałem dla siebie żadnej z tych złych technik.
Dość szybko zrozumiałem, że jeśli chcesz satysfakcji z programowania, zapomnij o pracy i masz swój własny projekt. To miejsce, w którym możesz wykorzystać całą swoją miłość, pasję i wiedzę, aby robić wszystko dobrze z wysokim poziomem jakości. Nauczysz się wielu rzeczy, niezliczonych rzeczy, na które nigdy nie byłbyś narażony i z którymi miałbyś do czynienia podczas hakowania nudnego personelu firmy. Robię swoją pracę tylko dla wypłaty i czerpię satysfakcję z moich osobistych projektów.
Jednej rzeczy, której tak naprawdę nie rozumiem, jest to, jak obecnie taka sytuacja jest możliwa. Rozwój oprogramowania bardzo się rozwinął. Ma dobre i złe doświadczenia. Wiele udanych projektów i wiele nieudanych. Istnieje doświadczenie w projektach długoterminowych i zrozumienie, jakie długoterminowe skutki przyniesie projektowi jedna lub druga organizacja. Dostępne są liczne opracowania i napisane dobre książki. „Pragmatic Programmer”, „Code Complete”, „Mythical Man-Month”, „Design of codzienne rzeczy” i inne. Dlaczego nikt poza nami, programiści, nigdy ich nie czytają? Jak to możliwe, że nawet po 20 latach pracy w IT większość programistów i menedżerów nigdy nie znalazła czasu na przeczytanie jednej lub drugiej książki metodologicznej. Są napisane dla tych, którzy najbardziej potrzebują tego leku, ale z trudem je czytają.
Jeśli chodzi o perspektywy kariery. Zauważyłem też ogólnie na rynku pracy dla pracowników, że pracodawcy coraz bardziej tracą zainteresowanie pracą wysokiej jakości (wyobraź sobie, że mieli ją kiedyś) coraz częściej kupują najtańsze dostępne rzemiosło. Trudno jest sprzedać komukolwiek swoją wiedzę, doświadczenie i zrozumienie wszechświata. To nie jest pożądane. Potrzebne jest zrujnowanie twoich projektów przez juniorów, którzy nie mają doświadczenia ani chęci wykonywania pracy zawodowej. Tani ludzie są wykorzystywani i wykorzystywani, a następnie wyrzucani, aby rozpocząć następną rundę. Projekty zlecane są również do miejsca docelowego o niskich zarobkach, gdzie wykonują je ludzie, którzy najwidoczniej zaczynają uczyć się programowania tylko z twoim projektem. To jedna rzecz, której naprawdę nie rozumiem.
Mam coraz więcej pomysłów, że porzucę pracę programistyczną w przyszłości. Bardzo chciałbym pracować na własny rachunek z własnym projektem. Jeśli nie to, rozważam spróbowanie freelancingu lub prawdopodobnie zmianę charakteru płatnej pracy. W końcu prawie niczego się nie uczę w godzinach pracy i nie mam żadnej satysfakcji. Mogę zrobić wszystko 9-5 i zawsze mam satysfakcję z moich osobistych projektów. Uczę się wiele od społeczności internetowych. Otrzymuję tutaj uwagę, wsparcie dla moich pomysłów, a czasem nawet uznanie, którego nigdy nie uzyskałem w pracy i moich współpracownikach. Zobaczę, gdzie będę w przyszłości.
źródło
;)
Był post Jeffa Atwooda w Coding Horror, w którym napisano, że to powinna być zabawa. Część opisu pracy programisty cieszy się z twojej pracy. W przeciwnym razie stanie się dla ciebie naprawdę nudnym i nieporęcznym zawodem.
Fakt, że stale poszukujesz sposobów na ulepszenie swojej pracy, a także jesteś na bieżąco informowany o nowych rzeczach i najlepszych praktykach pokazuje, że lubisz swoją pracę w naturze. Tak więc radzę ci zacząć szukać nowej pracy.
Jednak nie sądzę, że praca w dużej firmie niekoniecznie poprawi warunki pracy. Myślę, że najlepszym środowiskiem dla programistów są małe i średnie firmy, w których ludzie lubią to, co robią. Najlepiej jest poszukać i sprawdzić wszystkie firmy przed podjęciem decyzji. Postaraj się, aby nowa firma była tego warta.
źródło
Pierwsza rzecz: duże ostrzeżenie: jeśli rozwijasz się przez 10 lat (tak jak ja), nie możesz zrobić nic lepszego niż rozwój. Więc jeśli chcesz zrobić coś innego, coś nowego, zrób to szybko, inaczej może być za późno i nie będziesz dobry w robieniu czegoś innego.
Po prostu podzielę się swoim własnym punktem widzenia: jestem osobą kierującą się sobą, samoukiem. Nauczyłem się sam czystym C, C #, C Amiga rozwija, Windows, COM, Delphi, PHP, Cinema4D a teraz Blender i Python. Prawie zawsze pracowałem sam . Oto największy problem, jaki do tej pory spotkałem: małe firmy próbują przetrwać, a ty jesteś jednym z tych, którzy utrzymują go przy życiu: to bardzo stresujące, ale także satysfakcjonujące: pracujesz więcej, uczysz się szybciej i wiele innych rzeczy szybko, robisz produkty szybciej (choć często nie możesz prawidłowo wykonać swojej pracy). W każdym razie: zbyt duży stres. Wręcz przeciwnie, dużefirmy zawsze przetrwają, ale problem dotyczy ludzi: zbyt wielu ludzi. To dżungla, ale o wiele gorzej: nic nie jest jasne: jeśli ludzie, z którymi pracujesz, czują się lepsi od nich, postarają się jak najlepiej nie pomóc ci wejść na górę, ale tylko zastrzelić cię, ponieważ obawiają się o własną karierę. Tak to działa we Francji (nie wiem dla innych krajów).
Krótko mówiąc: spróbuj znaleźć firmę średniej wielkości, w której czujesz, że to twoje miejsce . Bez względu na to, jak długo programujesz, bez względu na to, jak długo pracujesz, dzień, w którym wsiądziesz do samochodu, aby przejść do pracy i myślisz, że „Cieszę się, że mogę iść do mojej pracy” będzie dzień, w którym znalazłeś swoje miejsce .
To nie jest kwestia 4-5 lat czy cokolwiek innego.
Uwaga: istnieje ogromna różnica między „Cieszę się, że mogę iść do mojej pracy”, a „Cieszę się, że mogę iść do mojej pracy, ponieważ zrobię to i tamto” / lub / „Cieszę się, że mogę przejść do mojej pracuj, bo nauczę się tego i tamtego ”. Jeśli pomyślisz „bo ja to zrobię i to”, to znaczy „to i tamto” skończy się pewnego dnia, a potem możesz nie być szczęśliwy. To jest moje 12-letnie doświadczenie w programowaniu. Jestem starszą osobą, jestem dobrze opłacany, ale zdaję sobie sprawę, że 20-25 lat ludzie myślą szybciej niż ja. Po prostu nie mają mojego doświadczenia, więc po prostu przyznałem, że mogę im pomóc w robieniu rzeczy, robią to szybciej, ale pomagam im je właściwie robić (co prawie nigdy nie ma miejsca, gdy zaczynasz rozwijać).
Przepraszam za mój angielski, który nie jest idealny, nie wahaj się poprawić mojego postu, aby był prawidłowy angielski.
źródło
Jestem programistą od dwudziestu jeden lat - między innymi oznacza to, że robię to wystarczająco długo, aby pić! ;-) Ale tak na poważnie, nie wyobrażam sobie, aby robić coś równie dobrze lub tak radośnie jak programowanie. Najwyraźniej jestem jednym z tych rzadkich ptaków, które naprawdę kochają tę pracę.
Niedawno odświeżyłem swoje CV i zauważyłem, że w ciągu ostatnich dwóch dziesięcioleci miałem wiele, wiele prac - głównie umów. Ale na podstawie tej długiej listy zdałem sobie sprawę, że najbardziej lubiłem (i najdłużej zatrzymywałem) pracę w firmach programistycznych, tj. Firmach, których model biznesowy obejmował sprzedaż oprogramowania klientom. Poniższe teorie prawdopodobnie nie mają uniwersalnego zastosowania, ale idą daleko, by wyjaśnić moje doświadczenie.
Moim zdaniem różnica między sklepem z oprogramowaniem a typowym sklepem IT jest zaskakująco oczywista. To tylko pytanie, co rozumieją osoby z wyższej kadry zarządzającej. Jeśli firma uzyskuje większość swoich przychodów z oprogramowania, to najlepsza branża naprawdę grokuje oprogramowaniem i sposobem jego wytwarzania. Ale jeśli przychody pochodzą ze sprzedaży widżetów, generalnie nie mają najmniejszego pojęcia, co jest potrzebne do utrzymania infrastruktury IT, nie mówiąc już o procesach tworzenia oprogramowania. Co gorsza, mimo że powierzają to zadanie pracownikom IT, starają się przyporządkować procesy IT do tego, co wiedzą, z rezultatami na ogół od rozczarowujących po katastrofalne.
Jednym z powodów jest to, że istnieje szeroki wachlarz talentów, od jedynie kompetentnego do wirtuoza oprogramowania. Jest to całkowicie sprzeczne z obcinaczem ciastek, uniwersalną mentalnością, która działa tak dobrze na niewykwalifikowanych i na wpół wykwalifikowanych stanowiskach. Oczekiwanie, że dowolnego programistę można zastąpić innym o podobnym „zestawie umiejętności”, może wydawać się nam absurdalne, ale często wydaje się całkowicie uzasadnione dla struktury zarządzania skoncentrowanej na surowych liczbach. Jeśli wydaje się to niewiarygodne, wystarczy spojrzeć na to, ile sklepów wciąż próbuje uruchomić model Waterfall.
Niekoniecznie potrzebujesz wszystkich wirtuozów w swoim zespole, ale potrzebujesz co najmniej jednego lub dwóch. I częścią ich roli musi być mentoring młodszych ludzi, aby mogli dorastać do roli (lub wymyć - to się zdarza). W przeciwnym razie zwycięży zły kod pośredni, z towarzyszącym mu błędnym działaniem i wzdęciem. Po pojawieniu się raka, kod szybko staje się niemożliwy do utrzymania, wydajność w zespole gwałtownie spada, a ludzie zaczynają się wypalać.
To powoduje obrót, aż w końcu ktoś mówi: „Nie możemy już dłużej tego robić! Złommy to i zacznijmy od nowa!” Inwestycja w starszą bazę kodów wychodzi poza okno, a proces rozpoczyna się od nowa. „Ale tym razem będzie inaczej”, obiecujesz sobie. I przez jakiś czas tak jest. Potem ktoś wynajmuje twoją gwiazdę rocka, a ty zostajesz z niedokierowanymi młodymi ludźmi, którzy ponownie niszczą twoją błyszczącą nową bazę kodów.
Spienić. Tyrada. Żałować.
Ale dygresję ... Tak więc, aby odpowiedzieć na twoje pierwotne pytanie: Nie, pół dekady nie jest w średnim wieku kariery programistycznej. Być może jest to raczej wiek rozumu - miejsce w twojej karierze, w którym łuski wypadają z twoich oczu i zaczynasz widzieć, czym jest biznes. Realizacje odbywają się w innej kolejności dla wszystkich, co zabarwia wnioski, które możesz wyciągnąć po drodze. Ale poczekajcie - jeśli wyjdziecie na drugą stronę przy zdrowych zmysłach, będziecie mieli znacznie zdrowszą perspektywę, a ostatecznie znajdziecie ten szalony biznes, który jest dla nas bardziej satysfakcjonujący niż kiedykolwiek wcześniej.
źródło
Myślę, że potrzebujesz jeszcze pięciu lat doświadczenia. Wtedy będziesz w stanie zaakceptować kompromisy i z przyjemnością naprawisz, co możesz.
Przynajmniej takie było moje doświadczenie. Po około 5 latach (mniej więcej tyle czasu, ile potrzeba, aby zostać ekspertem), myślę, że właściwie to „mam”. Zdałem sobie sprawę, że mój kod to bzdury. Zdałem sobie sprawę, że moje błyszczące hacki, dzięki którym aplikacje działały, właśnie takie były. Zrozumiałem, że tworzyłem podrzędny kod, aby uszczęśliwić moich szefów i utrzymać wypłaty.
Jednocześnie zdałem sobie sprawę, że pragnienia kapitalistów się nie zmienią. Zawsze chcieli tego wczoraj, nie wydając żadnych pieniędzy na dobre narzędzia. Nigdy nie będą się przejmować, jeśli użyję określonego wzoru. Nigdy nie będą zachwyceni, ponieważ zwiększyłem łatwość utrzymania, stosując rozsądnie zasadę pojedynczej odpowiedzialności.
Uświadomiłem sobie również, że będę walczył z moją młodszą jaźnią ucieleśnioną przez niedoświadczonych programistów. Programista, który zhakował program, aby szybko działał. Młody programista, który opierał się wszystkim tym głupim rzeczom, których zrozumienie zajęło mi lata. Młody programista, który myśli, że ma 5 klas, jest bardziej mylący niż jedna wielka klasa, która to wszystko robi.
Ale teraz, kiedy jestem w wieku 10 lat, przekonałem się, że te frustracje są jak frustracje, których doświadczyłem w ciągu pierwszych pięciu lat. Jest to frustracja związana z nauką nowej umiejętności. Ale tym razem umiejętności są interpersonalne. Umiejętności te sprawiają, że nieprogramiści rozumieją ograniczenia zejścia ścieżką kowboja. I te umiejętności są może ważniejsze w wielkim schemacie rzeczy niż umiejętności programistyczne, które nabyłem w ciągu pierwszych pięciu lat.
Ale to, co jest naprawdę niesamowite w tej pracy, to to, że mogę kontynuować i faktycznie muszę kontynuować, rozwijając umiejętności techniczne, jednocześnie pracując z zarządem.
Więc mówię wam, trzymajcie się tego! Ponieważ zaznajomiłeś się z technologią, możesz zacząć pracować nad swoimi umiejętnościami związanymi z bzdurnymi rzeczami zwanymi ludźmi.
źródło
Odkryłem, że istnieją 2 sekrety względnego szczęścia:
nie starajcie się mieć wszystkiego, co chcecie, ale starajcie się chcieć wszystkiego, co macie
życie jest trudne - nie ma znaczenia, jak mocno możesz trafić (dobrze, osobiście i profesjonalnie); zawsze uderzy mocniej. ważne jest, jak bardzo możesz zostać trafiony i nadal móc się poruszać.
W końcu jest to spacer po parku i są ważniejsze rzeczy niż bity i bajty oraz praktyki i rzeczy. Po prostu ciesz się wszystkimi obecnymi doświadczeniami i walcz jak najwięcej.
źródło
Może rzucił okiem na The Passionate Programmer Chada Fowlera ... cytując ze strony:
źródło
IMO niezadowolenie, które oczywiście odczuwasz, nie jest kryzysem, lecz znakiem, że osiągnąłeś określony poziom. Wyrosłeś z automatu „Jestem tylko programistą”. Masz teraz wystarczające zrozumienie, aby zobaczyć wady obecnego stanu rzeczy i jak to naprawić.
Następnym krokiem jest znalezienie związku między tym, co postrzegasz jako potencjalną poprawę, a tym, co postrzega firma, dla której pracujesz. Następnie musisz przekonać swojego szefa (szefów), że to jest właściwa droga.
Nie wystarczy rozumieć rzeczy i wiedzieć, jak to robić. Powinieneś także być w stanie przekonać ludzi, że wiesz, co robisz. A jeśli to brzmi jak sprzedaż, to dlatego, że tak jest. Ale jest to absolutnie konieczne, aby stać się „wielkim”. Pracujesz nie z komputerami, pracujesz dla ludzi i z ludźmi, musisz być w stanie sprzedawać swoje pomysły.
Oczywiście niektóre firmy byłyby zbyt konserwatywne, aby zaakceptować twoje pomysły, a twój szef może je odrzucić z powodu koloru krawata, który nosisz. Pamiętaj tylko, że sprzedaż pomysłów nie jest łatwiejsza niż generowanie pomysłów, a nieudana sprzedaż niekoniecznie wynika z ukrytych motywów twojego szefa, może to być zła prezentacja z twojej strony.
źródło
Całkowicie zgadzam się z Nikos. Myślę, że może potrzebujesz znaleźć firmę skupioną na technologii i produktach. Są firmy, w których programiści uważają rozwój za swoją pracę i nigdy nie myślą o tym w swoim własnym czasie. Środowisko pracy jest zwykle znacznie bardziej dostosowane do potrzeb menedżerów wykonujących pracę biurową niż programistów wykonujących pracę umysłową. Średni standard programistów jest ogólnie niski (chociaż czasami dostajesz jednego „guru”). Mają tendencję do zmniejszania narożników (a nawet unikania) takich rzeczy, jak kontrola wersji, testowanie, proces itp. Firma zazwyczaj dostarcza oprogramowanie, które wykonuje tę pracę, ale często jest brzydkie i błędne i nikt nie wydaje się szczególnie zaniepokojony.
Z drugiej strony są firmy, w których programiści robią to, co i tak robiliby w domu; wracają wieczorem do domu i pracują nad własnymi projektami dla deweloperów domowych, a w wolnym czasie uczą się nowych języków / technologii. Środowisko pracy zazwyczaj koncentruje się na programistach, z dobrymi monitorami, dobrymi narzędziami i dobrą atmosferą sprzyjającą myśleniu. Deweloperzy często mają wysoki standard i codziennie uczysz się od swoich rówieśników. Na ogół poważnie podchodzą do kwestii kontroli wersji, testowania i przetwarzania. Firma zazwyczaj dostarcza oprogramowanie dobrej jakości, ponieważ programiści biorą je osobiście, jeśli występują błędy lub niedoskonałości.
Nie sądzę, aby znalezienie większej firmy koniecznie poprawiło sytuację; w rzeczywistości w wielu przypadkach większe firmy są gorsze, a problemy są głębsze i bardziej instytucjonalne.
Oczywiście trochę polaryzuję ... ale jeśli jesteś inżynierem oprogramowania w sercu (a nie tylko w swoim CV), musisz spróbować znaleźć jeden z tych ostatnich rodzajów firmy. Pomyśl o kilka dobrych pytań do wywiadu można poprosić ich , aby dowiedzieć się, czy dana firma jest tego rodzaju miejsce.
źródło
Coś, co wielu programistów nie rozumie, to to, że nie wszystkie decyzje mają charakter techniczny. Niestety, robienie czegoś „dobrze” nie zawsze jest opcją. To prowadzi wielu programistów do myślenia, że ich szefowie są głupi lub podejmują złe decyzje ... i tak, często tak jest, ale równie często faktem jest to, że firma może nie prowadzić działalności lub stracić zadanie całkowicie, jeśli pozwolą programistom ustalić harmonogram i podjąć wszystkie decyzje techniczne.
Niestety, czasem naszym zadaniem jest praca w ramach politycznych lub finansowych ograniczeń pracy i robienie wszystkiego, co w naszej mocy.
Jedną rzeczą, której uczysz się z doświadczenia, jest bycie konserwatywnym. Najnowsze techniki mogą nie zostać udowodnione i możesz nie mieć ich silnego zrozumienia, nawet jeśli są. Menedżerowie nie lubią spędzać czasu na przyzwyczajaniu się do nowych technologii tylko dlatego, że chcą się nauczyć czegoś nowego.
Programiści zapominają, że wiele firm nie jest firmami programistycznymi. Są to <wstaw tutaj branże biznesowe>, które również wykonują oprogramowanie. Twoim zadaniem jako programisty jest ułatwianie krytycznych procesów misji, a nie pisanie doskonałego oprogramowania. Czasami okazuje się, że są to to samo, ale w rzeczywistości jest to dość rzadkie.
źródło
Moim zdaniem nie jest to kryzys wieku średniego - powiedziałbym, że miesiąc miodowy się skończył.
źródło
Mogę odnieść się do tego, że napisany kod może być lepszy, ale musi istnieć wiersz, w którym można być zbyt wielkim perfekcjonistą, jakby coś działało w 99,99999% przypadków, czy nie jest to wystarczająco blisko 100% dla większości ludzi ? Częścią moich zmagań z czasami negatywnymi wzorcami myślowymi są perfekcjonizm oraz intensywna samokrytyka i osąd, więc może mogę z tym nadmiernie się utożsamić.
4-5 lat to wystarczająco dużo czasu, IMO, aby dowiedzieć się kilku rzeczy:
Istnieją inne pytania, takie jak „ Mapa drogowa do lepszego programisty ” i „ Jak zostać„ szybszym ”programistą ”, które mogą zawierać sugestie, jeśli chcesz poprawić swoje umiejętności.
Doświadczyłem również, gdzie tytuł seniora jest przyznawany komuś tylko za to, że przetrwał tak długo w polu, zamiast osiągać poziom umiejętności. Możesz zaakceptować to jako część funkcjonowania świata lub spróbować znaleźć miejsca, które działają inaczej. Ilu faktycznie istnieje, ale nie wiem, ale mogę powiedzieć, że czasami można znaleźć dobre miejsce pod względem tego, jak lubisz pracować i czego firma i współpracownicy używają do wykonania pracy.
„ Źródła wglądu ” to jeden z moich ulubionych blogów i czytam go prawie cały czas. Materiał jest trochę ciężki, ponieważ zawiera wiele elementów intelektualnych do tego, co jest napisane, ale istnieją bryłki, które można wziąć i uczynić ich życie nieco lepszym, a przynajmniej takie było moje doświadczenie.
Pamiętam, jak w szkole, kiedy byłem dzieckiem, często następowały zmiany po 4-5 latach, ponieważ kiedy byłem w pierwszej szkole przez 8 lat (Junior przedszkole do klasy 6), to było 2 lata (klasy 7 i 8) , 4 lata (liceum w klasach 9–13, gdzie 11/12 w moim przypadku odbyło się w jednym roku) i 4 lata (licencjat uniwersytecki).
Potrafię pogodzić się z kryzysem pojawiającym się w różnych momentach życia, np. Ukończenie uniwersytetu może powodować, że ktoś zastanawia się, kim jest, lub po pewnym czasie zastanawia się, czy to wszystko jest tego warte.
Niektóre miejsca mogą wydawać się niesamowitymi miejscami do pracy, a inne mogą prowadzić do wypalenia zawodowego, ponieważ zadawano tu kilka pytań: „ Co powoduje wypalenie programistów ” i „ Historie wypalenia programistów ”, podczas gdy inne pytania są tego rodzaju, „ Jaka jest twoja motywacja ” i „ Programowanie (de) motywacji i dalsze plany ... ”
Ze względu na tło w mojej odpowiedzi opracowuję strony internetowe / aplikacje od prawie 12 lat, kiedy po raz pierwszy dostałem pracę uniwersytecką w lutym 1998 roku i oprócz 8-miesięcznej suszy, w której nie pracowałem robią to przez cały czas w kilku różnych środowiskach: kilka dot-coms, dostawca usług aplikacyjnych, a teraz w zespole rozwoju sieci w dziale systemów informatycznych w lokalnej firmie technologicznej. Zdaję sobie sprawę, że to długa odpowiedź, ale myślę, że zadane pytania nie mają krótkich odpowiedzi.
źródło
Podobne rzeczy znalazłem w ciągu 10 lat programowania i przypuszczam, że są to dość częste zdarzenia. W świecie biznesu (w przeciwieństwie do środowisk akademickich) pieniądze (lub brak pieniędzy) i czas decydują o harmonogramie, funkcjach i jakości programowania. Często brakuje tych zasobów do robienia rzeczy w pełni poprawnie. Jest to główny motywator do znalezienia najbardziej skutecznych metod rozwiązywania problemów. Ta sytuacja doprowadziła mnie również do tego, aby pamiętać, że moje programowanie powinno rozwiązać tylko bieżący problem (z pewną dozą przyszłych rozważań) zamiast budować coś, co zawiera o wiele więcej funkcji, niż jest to wymagane. Moim zdaniem jest to kluczowa lekcja do nauczenia się.
Wasze komentarze na temat „starszych programistów” są również, niestety, powszechne w moim doświadczeniu. Myślę, że powód jest dwojaki - po pierwsze, wielu doświadczonych programistów leniwie korzysta z narzędzi i metod, które zastosowali w swojej karierze. Jednak technologia idzie naprzód, a to prowadzi tych doświadczonych programistów do zostania „dinozaurami”. Po drugie, po jakimś czasie programowania może łatwo stać się ofiarą pychy („moje talenty doprowadziły mnie do tej pory, więc muszę być całkiem dobrym programistą”). Próbuję zwalczyć oba te problemy, nieustannie próbując uczyć się nowych metod lub technologii w celu rozwiązania moich problemów. Czasami jest to sprzeczne z powyższym stanem lekcji „buduj tylko to, co jest wymagane”, ale celem jest dążenie do zdrowej równowagi między nimi.
Sugeruję korzystanie z doświadczeń, które masz jako motywator do ciągłego doskonalenia siebie. Sam porzuciłem branżę programowania po około 5 latach, ponieważ straciłem pasję do programowania kodu. Ale nie mogłem pozbyć się swędzenia do tworzenia programów i wróciłem do branży kilka miesięcy później. Nauczyłem się, że musisz angażować się w robienie tego, co lubisz robić - jeśli chcesz zarządzać projektami, znajdź stanowisko, które pozwoli ci zarządzać projektami. Jeśli chcesz kodować przez cały dzień, znajdź pozycję, aby to zrobić. Znalezienie pracy, która rzuca ci wyzwanie i spełnia twoje pragnienia, jest cudowną i niezbędną częścią szczęśliwego życia - życzę powodzenia w znalezieniu tego.
źródło
Hej kolego, naprawdę dobrze było przeczytać twoje pytanie. Cieszę się, że tak napisałeś. Wiesz co, nie zdajesz sobie sprawy, jakie rozumienie masz teraz. Rzeczy, które napisałeś, pozwalają mi zrozumieć, jakie masz doświadczenie, i wierz mi, że to doświadczenie jest czymś, czego nie wszyscy programiści mogą mieć w swoim życiu. Jesteś osobą kierującą się sobą, samoukiem. W tej chwili jesteś w bardzo dojrzałym stanie, po 4 latach pracy dla małych firm. Gdybyś był w dużych firmach, nie miałbyś nic, co można by uznać za doświadczenie. Teraz rozumiesz, jak działa ta branża, jak się rzeczy mają i jak należy to zrobić. Jaki poziom mają ci tak zwani „seniorzy”. Mam dla ciebie sugestię, jeśli jesteś tak dobrym uczniem i ćwiczysz samokształcenie od ponad 4 lat, dlaczego nie „ próbujesz pracować jako freelancer. Uwierz mi, że pracowałbyś dla siebie i cieszyłbyś się znacznie więcej.
Na zakończenie nie żałuj tego, co zrobiłeś w ciągu ostatnich 4 lat. To wspaniałe doświadczenie i tylko nieliczni mają to w swoim życiu :)
źródło
Różnica między starszymi i młodszymi programistami, gdy mówimy o ludziach z doświadczeniem, jest na ogół oparta na wynagrodzeniu. Istnieje duża zmienność tego, co organizacje cenią, aby zmienić tytuł, i często zależy to od tego, czego oczekujesz po zatrudnieniu.
Jeśli to jakaś pociecha, mam 10-letni kryzys w połowie programowania, chociaż zacząłem programować na Apple] [+, więc może to być 24 rok; Nie wiem Chciałbym tylko, żeby ludzie nie oczekiwali magii od programistów.
źródło
Uważam, że czerwona nić, którą widziałem w mojej karierze, polega na tym, że kiedy czuję, że jestem uwikłany w sytuację, w której nie mam kontroli nad swoim otoczeniem, to znaczy kiedy zaczynam się nudzić. Po prostu robienie tego, co mówią ci inni. Ważne jest, aby mieć własny obszar (IMHO), aby ponosić pełną odpowiedzialność - być może brakuje go również w twojej pracy?
W takim przypadku powinieneś porozmawiać ze swoim menedżerem, może jest jakieś rozwiązanie w twojej obecnej pracy? Pytanie o większą odpowiedzialność jest zawsze dobrym posunięciem.
źródło
Z mojego doświadczenia wynika, że pierwsze tygodnie (najwyżej miesiące) są kluczowe dla ogólnej jakości projektu. Jeśli zdarzy się, że zaczniesz pracować w miejscu, w którym inni programiści już stworzyli bałagan (złe standardy kodowania, brak kontroli wersji itp.), Menedżerowi bardzo trudno jest, a przeważnie nie jest możliwe, wprowadzenie jakichkolwiek ulepszeń. Później terminy i ustalone kwestie spowodują brzydotę w prawie każdym projekcie, ale jeśli fundament zostanie dobrze zrobiony, szkody będą ograniczone i możliwe do opanowania.
Z tego powodu, jeśli znajdziesz się w sytuacji, w której musisz pracować ze złymi rówieśnikami przy złym projekcie, spróbuj zostać przydzielonym do nowego projektu (jeśli jest to możliwe w Twojej firmie) lub znajdź nową pracę. Nie czekaj zbyt długo, ponieważ złe nawyki są zaraźliwe.
źródło
Mam te same pytania i prawdopodobnie spojrzałem na te same rzeczy, które masz (świetne start-upy, inspirujące porady, zmotywowani ludzie tworzący niesamowite rzeczy, procesy, algorytmy, które sprawiają, że twoje serce jest sercem) tylko po to, by znaleźć tego u moich współpracowników, obecnych lub byłych , ani u ludzi, których znam, którzy są w branży. Tak więc zagadka polegająca na powiązaniu tego głębokiego zainteresowania z płatną pracą oznaczała wiele źle przespanych nocy i poszukiwanie projektu tak genialnego, że można by go odłożyć na bok, a jednocześnie wyrosnąć na własną rękę wystarczająco szybko, aby zapewnić wyjście. Jak wiele osób, mam rodzinę do wsparcia i osobiście uważam, że energia potrzebna do zbudowania czegoś w startupie skierowanym na rynek brazylijski nie jest dobrze wydatkowana, jeśli nie jest całkowicie informatyczna i nudna. A tak na poważnie? Robię IT i nudne rzeczy przez cały dzień.
Więc dla mnie odpowiedzią jest utrzymanie woli uczenia się i doskonalenia w jednym miejscu i pracy w innym. Podjąłem przetwarzanie.org i staram się rysować, pisać i gotować więcej. Szczerze mówiąc, to było dla mnie świetne: czasem pasjonujesz się ludźmi, których podziwiasz i bierzesz udział w Panteonie wielkich osiągnięć, że ignorujesz poważne fakty o tym, kim jesteś i co sprawia, że czujesz, że życie jest warte życie. I choć praca zajmuje ci sporo dnia, w chwili, gdy przestajesz martwić się, co to wszystko znaczy, i gdzie idziesz, jest moment, w którym zdajesz sobie sprawę, że nie potrzebujesz tego, aby się tam dostać. Kontynuuj kodowanie, jeśli to, co kochasz, pisz oprogramowanie w domu, przyczyniaj się do projektów, które Cię pasjonują. Ten rodzaj satysfakcji prawie nigdy nie pochodzi z wypłaty dla większości ludzi,
źródło
Jako programista zawsze będziesz musiał zrównoważyć swoje pragnienie doskonałości i pragnienie pracodawcy dotyczące działającego produktu. W niektórych firmach te dwa pragnienia będą do siebie bliższe, w większości firm te dwa pragnienia będą daleko od siebie.
Moja najlepsza propozycja, aby poradzić sobie z wyczerpaniem codziennej pracy, to rozpocząć osobisty projekt na boku, taki, w którym nie ma ostatecznego terminu, w którym możesz pracować w obszarach, w których zwykle nie pracujesz, w których wykonujesz wszystkie decyzje. Najbardziej satysfakcjonujący kod, który napisałem, był podczas pracy jako programista Wii, mogę zasugerować napisanie gry. Będziesz mógł dotknąć każdego innego aspektu programowania, 3D, sieci, sztucznej inteligencji itp., A ponieważ już pracujesz z .Net, sugeruję pobranie XNA lub Unity
Jeśli chodzi o starszych programistów, którzy nie wiedzą wiele, prawdopodobnie masz rację. Większość starszych programistów w większych firmach awansowało w czasie, gdy dużo wiedzieli lub kiedy byli w stanie wykonać zadanie. Teraz, gdy są starsi, mają różne obowiązki, głównie jako kierownicy. Oczekuje się, że ich umiejętności kodowania nieco się poślizgną. Niektóre są lepsze od innych, a niektóre prawdopodobnie właśnie awansowały z powodu tego, kogo wiedzą, ale większość starszych programistów, z którymi pracowałem w przeszłości, miała solidny (choć czasem przestarzały) zestaw umiejętności.
Podsumowując, zrób osobisty projekt, aby złagodzić codzienną nudę i uspokoić swoich seniorów, po prostu wykonaj najlepszą pracę, jaką możesz w wyznaczonym czasie, a wszystko będzie dobrze.
źródło
Myślę, że nadszedł czas, aby zostać Sr, programistą dla ciebie, jestem nowy na tym rynku i uczę się i doskonalę, ale pracodawcy nie szukają ludzi, szukają potworów takich jak Jr. programista z ponad 6-letnim doświadczeniem i to naprawdę denerwujący.
źródło
Dobre pytanie Jeffrey. Czy nadal lubisz programować? Czy pasjonujesz się tym, czy robisz to w wolnym czasie? A może masz dość okropnych zadań programistycznych, które miałeś.
Jeśli masz wrażenie, że programowanie nie jest dla Ciebie, istnieje wiele innych dyscyplin, które możesz odgrywać w tym momencie swojej kariery - zarządzanie projektami, sprzedaż, przedsprzedaż, analityk. Te możliwości nie istniałyby, gdy byłeś juniorem / absolwentem, więc możesz nie zacząć myśleć poza cięciem kodu. Być może możesz skontaktować się ze swoim pracodawcą, aby sponsorować Cię do egzaminów certyfikacyjnych, lub jeśli chcesz odkryć nową technologię (Azure / Silverlight / WPF?)
Z drugiej strony, jeśli uważasz, że Twoje miejsce pracy przypomina realistyczny komiks Dilberta, być może nadszedł czas, aby przejść dalej. Jeśli pracujesz w dużej firmie, możesz porozmawiać z kilkoma startupami lub odwrotnie. Nie musisz nikomu mówić, że ubiegasz się o pracę, a nawet kiedy dostaniesz ofertę, jesteś w doskonałej pozycji negocjacyjnej, ponieważ już masz pracę, możesz po prostu zdecydować, czy oferta jest lepsza niż twoja obecna sytuacja, a jeśli nie, to po prostu szukaj dalej. Większe firmy często oferują lepsze możliwości rozwoju kariery i szkolenia, podczas gdy w małej firmie zyskujesz więcej wartości niematerialnych, takich jak odpowiedzialność za sukces firmy, elastyczne godziny pracy, opcje na akcje oraz staż pracy / szacunek później, jeśli / kiedy firma uderza to duże.
źródło
Jeśli to jakaś pociecha, tak samo czułem się o seniorach w moim miejscu pracy. W zeszłym tygodniu złożyłem raport oparty na dowodach, aw tym tygodniu miałem godzinne spotkanie z personelem, aby oficjalnie złożyć skargę na kierowników (biorąc pod uwagę, że jestem młodszy). Albo wyhodowałem trochę piłek, albo byłeś niezadowolony z mojej pracy. To nie są złośliwe skargi, to konstruktywne skargi. Jest różnica, która z pewnością może mieć ogromny wpływ na twoje szczęście w pracy.
EDYTOWAĆ
Powiedziałbym również, nie „poddawaj się”, ponieważ masz problem z ludźmi. Wydaje się, że wiele osób mówi tutaj „rzuć pracę”, prawda jest taka, że możesz zmienić sytuację w miejscu pracy. Wiem, to brzmi tandetnie, ale myślę, że wprowadzisz zmiany i zyskasz większy szacunek, jeśli jesteś proaktywny, by coś zmienić. Nie bój się odsunąć swojego szefa i złożyć skargę. Mam i już zrobiło to dużą różnicę. Wdrażamy nowe technologie, zmieniamy nasze procedury pracy i bardziej formalnie podchodzimy do zadań, wszystko z powodu tego, co powiedziałem (i jestem młodszym programistą)
źródło
Cóż, powinieneś nauczyć się innej domeny (matematyka, AI, eksploracja danych, BI, integracja cokolwiek). Następnie, po opanowaniu tej nowej domeny, masz nowe pomysły, które odpowiadają rzeczywistym potrzebom biznesowym.
Na tym etapie, jeśli jesteś świetnym programistą, musisz tylko uruchomić. Cóż, to ryzykowne, ale o wiele przyjemniejsze.
Naucz się różnych umiejętności i kompetencji, nie tylko programowania, a następnie połącz je, aby stworzyć nową rzecz, o której nikt nie pomyślał. To proste, masz już najlepszy młotek w historii: programowanie.
źródło
Moje osobiste doświadczenia są takie same, jak wspomniałeś. Głównie wszystkie projekty, nad którymi ostatnio pracuję, są realizowane w pośpiechu i wszystko może być lepsze. Jestem programistą od około 7 lat i pracuję w tej samej średniej firmie. Kierownictwo nie ma pojęcia i prowadzi wszystkie projekty jako „nieprojektowe”. W chaosie jest bardzo mało porządku.
Najbardziej obawiam się, że wpadam w otchłań, o której mówisz, i zaczynam robić „gówniane” programy i głupią decyzję, by pójść naprzód w mojej karierze. Mam nadzieję, że ktoś tam uderzy mnie w głowę, jeśli tak się stanie.
źródło
Łał! Podoba mi się, jak cenna jest ta rozmowa. Jestem programistą z ponad 5,5-letnim doświadczeniem i uwielbiam to. Nie mogę głosować, ale zacytuję słowa AZ. Zgadzam się z tym!
Książka, którą poleciłbym to: http://www.amazon.com/Software-Measurement-Estimation-Quantitative-Engineering/dp/0471676225
źródło
Moje dwa punkty:
Uderzyłem w mój po zaledwie 2 latach w branży. Pokonałem go, doskonaląc się i ucząc.
W większości przypadków nadejdzie, ponieważ robicie to samo w kółko. A jeśli ciągle robisz to samo ... cóż ... robisz to źle.
Zawsze ulepszaj. Zawsze się ucz. I do diabła, jeśli twoja obecna firma nie daje ci takiej atmosfery, znajdź taką, która to zrobi. Zrobiłem to, a ostatnie 2 lata były najlepszym czasem w moim życiu (prawdopodobnie jestem także 100 razy lepszy w pracy niż byłem 2 lata temu)
źródło
Jest wielu programistów, ale tylko niewielka część z nich to inżynierowie jakości. Myślę, że to prawda w każdym zawodzie.
źródło
Witamy w prawdziwym świecie ... niestety to, co opisujesz, dzieje się w większości karier z ludźmi, którzy po prostu nie mają wystarczającej pasji do tego, co robią. Jest tylko jedna opcja (to znaczy, jeśli kochasz swoją pracę): musisz znaleźć lepszy sklep do pracy, choć w obecnych czasach nie jest to łatwe ...
źródło
... śledzony przez ...
Potem nadszedł czas, aby zacząć szukać i podjąć działania. Ponieważ jeśli pozostaniesz programistą z takim nastawieniem, skończysz tak, jak ci „starsi” ludzie, których tak wyraźnie gardzisz. Słowo operacyjne jest „uwięzione”: zarobisz wystarczająco dużo pieniędzy, że nie możesz usprawiedliwić przejścia na coś innego, a twoje umiejętności będą tak wąskie, że nie będziesz mógł poruszać się w branży.
źródło
Może zastanawiasz się nad pójściem do szkoły? Może to otworzyć możliwości dla innego, bardziej długoterminowego rodzaju pracy.
źródło