Jakie są presje bycia inżynierem oprogramowania? [Zamknięte]

36

Myślę o karierze w inżynierii oprogramowania, ale zanim zacząłem szukać pracy, chciałem dowiedzieć się, czego się spodziewać, szczególnie pod presją. To będzie moje pierwsze zadanie programistyczne (więc szukam poziomu podstawowego), więc nie jestem jeszcze dojrzały jako programista.

Moje pytanie brzmi: jaka jest presja w tych zawodach? Jak wysokie może być ciśnienie?

Jeśli twój szef da ci zadanie, a termin przypada za dwa tygodnie, ale zajmie ci to 3, czy zostaniesz zwolniony, ponieważ nie jesteś w stanie wykonać?

Czy masz czas, aby dowiedzieć się więcej o technologii, rozwinąć swoje umiejętności kodowania i się rozwijać, czy też oczekuje się, że już ją poznasz i zaczniesz płonąć w ramach projektu?

Jeśli masz problemy z kodem, czy oczekujesz, że sam go obsłużysz i będziesz pracować niezależnie, czy też możesz poprosić innych o pomoc, jeśli utkniesz?

Czy spodziewasz się wielu późnych nocy, aby dotrzymać terminów?

Wiem, że to może zależeć również od firmy, ale chciałem po prostu trochę profesjonalnej wiedzy na temat możliwej presji bycia programistą / programistą itp. Wiem również, że inne prace mają presję! Chciałbym tylko poznać presję związaną z inżynierią oprogramowania.

Powodem, dla którego zadaję to pytanie, jest to, że raz miałem złe doświadczenie w programowaniu i chciałem wiedzieć, czy większość z tych zadań jest taka sama.

Jeśli inżynieria oprogramowania / programowanie / programowanie jest silną presją, z którą nie chcę sobie poradzić, czy istnieją inne rodzaje rozwoju, takie jak tworzenie stron internetowych, administrator systemu itp., Które są mniej presją, na którą mogę wejść i nadal kodować?

Dziękuję za przeczytanie i czekam na wysłuchanie myśli wszystkich.

Ecurbed
źródło
podczas gdy wielu może odpowiedzieć na coś w stylu „to zależy”, możesz wyszukać w Google „najmniej stresujące prace”. Za każdym razem, gdy jakiś podmiot przeprowadza tego rodzaju badanie / ankietę, inżynier oprogramowania zawsze pojawia się w pierwszej piątce. Na poziomie makro najlepsza odpowiedź: presja jest minimalna. większość z nas lubi nasze prace.
jeremy.mooer
Zdajesz sobie sprawę, że inżynieria oprogramowania jest akredytowanym dyplomem, prawda? Nie zaczynasz pracować jako „inżynier” bez formalnego wykształcenia lub szkolenia. Mogą istnieć firmy, które chętnie i chętnie błędnie wydadzą tytuł, ale w takim przypadku jest to również tytuł bez znaczenia i nikt nie zgadnie, co to naprawdę znaczy.
Aaronaught
1
Jak myślisz, co oznacza „akredytowany stopień naukowy”? Wskazówka - nic.
Neil Butterworth,
1
Akredytowany stopień naukowy, akredytowany zawód, ta sama oferta; oznacza to między innymi, że musisz wykazać się podstawowym poziomem kompetencji i profesjonalizmu, zanim będziesz mógł praktykować jako profesjonalista, i możesz odebrać licencję na praktykę, jeśli nie będziesz go dalej demonstrować. W wielu krajach tytuł „inżynier” jest chroniony tak samo jak „lekarz” lub „adwokat”.
Aaronaught
Naprawdę chciałbym wybrać więcej niż jedną poprawną odpowiedź, ponieważ czuję, że otrzymałem więcej niż jedną naprawdę dobrą odpowiedź.
Ecurbed

Odpowiedzi:

53

Presja istnieje tylko wtedy, gdy na to pozwalasz.

Oświadczenie to dotyczy każdej pracy lub dowolnej sytuacji.

Presja może być postrzegana jako znacząca w zawodzie programisty, ponieważ wielu z nas ma wspólne cechy, takie jak bycie zamkniętym w sobie lub brak pewności siebie.

Jeśli twój szef da ci zadanie, a termin przypada za dwa tygodnie, ale zajmie ci to 3, czy zostaniesz zwolniony, ponieważ nie jesteś w stanie wykonać?

Dlaczego ON przydzielił ci zadanie i ustalił, ile czasu TY musisz poświęcić, aby je zrealizować? Usuń presję, oceniając swoje zadania samodzielnie (jeśli jesteś w zespole, użyj Planning Poker )

Czy masz czas, aby dowiedzieć się więcej o technologii, rozwinąć swoje umiejętności kodowania i się rozwijać, czy też oczekuje się, że już ją poznasz i zaczniesz płonąć w ramach projektu?

Czas na naukę jest częścią codziennej pracy. Oczekuje się, że będziesz się uczył ciągle. Dlatego uczenia się nie należy traktować jako presji.

Zawsze sobie powtarzałem, że nauka nowej technologii jest jak dodanie nowego narzędzia za pas .

Jeśli masz problemy z kodem, czy oczekujesz, że sam go obsłużysz i będziesz pracować niezależnie, czy też możesz poprosić innych o pomoc, jeśli utkniesz?

Proszenie o pomoc to umiejętność, którą powinien posiadać każdy programista. Ludzie walczący (samotnie) próbujący rozwiązać błąd wywierają na siebie presję.

Czy spodziewasz się wielu późnych nocy, aby dotrzymać terminów?

Masz na myśli termin ustalony przez szefa dwa pytania wcześniej?

W skrócie: naucz się mówić NIE .

Kent Boogaart
źródło
1
Świetna odpowiedź. Dodam jeszcze jedną rzecz: „naucz się mówić nie”
PSU_Kardi,
2
@PSU_Kardi: to właściwie przesłanie. Jeśli nie masz nic przeciwko, użyję twojego komentarza w odpowiedzi.
1
Nie przejmuj się wcale. Kiedyś nauczyłem się mówić „nie” zamiast „zobaczymy” lub „spróbuję”, sprawy stały się znacznie łatwiejsze.
PSU_Kardi
2
Wiedziałem, że to ty, tylko z tytułu: D
lol, czy zaczynam generować wibrację podczas programowania wymiany stosów? : D
Ecurbed
14

Jedyną presją, jakiej osobiście doświadczyłem, jest konieczność porzucenia dobrej jakości pracy (co wymaga czasu) i złamanie terminów (co skutkuje niską jakością kodu).

Ponieważ zazwyczaj nie ma czasu na naprawę, zatrzymaj się na chwilę, aby pomyśleć o tym, co robimy, i dobrze wyczyść kod i przeredaguj kod, co powoduje pewne obciążenie psychiczne, aby kontynuować w sposób, którego nie lubisz.

Jeśli uwielbiasz to, co robisz i chcesz robić wszystko, co w twojej mocy, będziesz miał trudności ze znalezieniem sklepu, który będzie miał właściwe podejście.

Jeśli z drugiej strony nie przejmujesz się i po prostu chcesz wypłaty, będzie łatwiej.


źródło
3
Jest to bardzo istotne, ponieważ przez większość czasu możesz wykonać tę samą pracę w ciągu 1 tygodnia lub 1 miesiąca, w zależności od tego, jak niezawodny, bezpieczny itp. Chcesz, aby kod końcowy był. Często wywierana jest presja, aby dostarczyć coś szybko, a nie coś bardzo niezawodnego, elastycznego, skalowalnego itp. I stresujące jest popełnienie czegoś, gdy wiadomo, że nie przetestowano go wystarczająco.
Xavier T.
11

We wszystkich przypadkach odpowiedź brzmi - to zależy. Istnieje kilka niezwykle wymagających zadań, takich jak obsługa biur handlowych w banku inwestycyjnym. Jeśli inwestorzy nie mogą handlować, będą krzyczeć o twoją głowę i mogą ją zdobyć. Z drugiej strony są miejsca, w których programiści siedzą i grają przez cały dzień. Zazwyczaj zarabiasz znacznie, dużo więcej za pracę w pierwszym miejscu niż w drugim, więc musisz zrównoważyć zysk pieniężny z presją, którą możesz wytrzymać.

Neil Butterworth
źródło
7
W każdym miejscu, w którym kiedykolwiek pracowałem, gdzie traktowano mnie jak ****, również otrzymywałem wynagrodzenie jak ****. To tylko moje doświadczenie.
wałek klonowy
@maple Nie powiedziałem, że będziesz źle traktowany w IB.
Neil Butterworth,
1
+1 To zależy, to jedyna możliwa odpowiedź!
Benjol
1
Nie znalazłem żadnej korelacji między presją a płacą. Istnieje bardzo ścisła korelacja między wartością biznesową oprogramowania a wynagrodzeniem, ale wynika ona raczej z kary za niepowodzenie niż z korzyści sukcesu.
Christopher Bibbs
3
@Neil Pracowaliśmy w różnych firmach. :) Miałem szczęście pracować nad projektem, który osiągał 900% ROI rocznie. Powiedzenie, że kierownictwo dało nam przestrzeń do oddychania, jest niedopowiedzeniem.
Christopher Bibbs,
5

Moje pytanie brzmi: jaka jest presja w tych zawodach? Jak wysokie może być ciśnienie?

Podobnie jak w przypadku wielu miejsc pracy, presja będzie tak wysoka, jak na to pozwolisz, lub tak wysoka, jak tylko zechcesz. Jeśli możesz przewidzieć, że ciśnienie jest wyższe niż poziom komfortu, istnieją sposoby wyprzedzającego działania, aby je obniżyć.

Jeśli twój szef da ci zadanie, a termin przypada za dwa tygodnie, ale zajmie ci to 3, czy zostaniesz zwolniony, ponieważ nie jesteś w stanie wykonać?

Jeśli twój szef cię do tego zwolni, i tak lepiej ci będzie z nowym szefem. Z drugiej strony, jeśli zaczekasz, aż zadanie zostanie wykonane, zanim ostrzeżesz swojego szefa, że ​​będzie o 50% spóźniony, mogę zostać nakłoniony do zwolnienia cię. Jak tylko będę dość pewny, że spóźnię się na tyle, aby mieć znaczenie, daję znać mojemu szefowi, aby mógł wprowadzić poprawki, aby sobie z tym poradzić. Dostosowania mogą być tak niewielkie, jak

Czy masz czas, aby dowiedzieć się więcej o technologii, rozwinąć swoje umiejętności kodowania i się rozwijać, czy też oczekuje się, że już ją poznasz i zaczniesz płonąć w ramach projektu?

Większość nowych programistów byłaby zszokowana, wiedząc, jak niskie są oczekiwania co do ich umiejętności i wiedzy. Oczekuje się, że nowy pracownik będzie wiedział, że jest to główny czas, kiedy twierdzą, że mają bezpośredni kontakt z nimi podczas rozmowy kwalifikacyjnej.

Jeśli masz problemy z kodem, czy oczekujesz, że sam go obsłużysz i będziesz pracować niezależnie, czy też możesz poprosić innych o pomoc, jeśli utkniesz?

Obie. O ile to możliwe, oczekuje się, że poradzisz sobie z tym samodzielnie, ale każdy napotyka sytuacje, w których musi rozmawiać z innymi. Jednym z kluczy do bycia produktywnym programistą jest poznanie różnicy.

Ciągle mówię nowym programistom w moim zespole, że mają zadawać pytania. Jeśli nie zadają wystarczającej liczby pytań, nie robią postępów.

Czy spodziewasz się wielu późnych nocy, aby dotrzymać terminów?

Jeśli musisz się spóźnić, aby dotrzymać terminów, pracujesz dla startupu lub pracujesz dla firmy, która ma poważne problemy z planowaniem lub zarządzaniem.

jimreed
źródło
To także doskonała odpowiedź!
Ecurbed
3

Jedną z największych rzeczy, które uświadomiłem sobie, która pomogła mi poradzić sobie z obawami dotyczącymi tego, czego się spodziewać w tej karierze ...

Jak ci poszło w szkole? Jak radzili sobie twoi rówieśnicy w szkole? Jak oceniasz swój poziom inteligencji i umiejętności rozwiązywania problemów w porównaniu z rówieśnikami? Jak ciężko jesteś pracownikiem w porównaniu z rówieśnikami?

Niezależnie od tego, co ocenisz na pytania, które właśnie zadałem, obniż poziom jeszcze o jeden stopień, i to zazwyczaj jest poziom, na którym będzie działać NAJWIĘKSZA osoba, z którą kiedykolwiek będziesz profesjonalnie współpracować.

Średnie IQ wynosi około 100 w populacji ogólnej, a średnia etyka pracy i poziom stresu przez większość innych programistów jest ogólnie zrelaksowana. Nie oczekuj, że ta średnia będzie znacznie inna, bez względu na to, jaki wybierzesz karierę.

Chodzi mi o to, że inteligencja jest ważna, ale jest o wiele mniej ważna niż silna etyka pracy, motywacja i pasja.

Jeśli masz te trzy ostatnie rzeczy, będziesz ponadprzeciętny w terenie i cenny, nawet jeśli popełnisz kilka błędów, a nawet jeśli nie będziesz tak mądry jak ten drugi facet. Wszyscy popełniają błędy, każdy DOBRY pracodawca zdaje sobie z tego sprawę, ale to, co lubią, to to, że nauczyłeś się z tego i dokładasz starań, aby się poprawić.

wałek klonowy
źródło
1
Więc kto chce być przeciętny? Programiści, których znam, są bardzo zaangażowani (a przy ilorazie inteligencji znacznie bliżej 150 niż 100).
Neil Butterworth,
IQ wynoszące 150 jest naprawdę wyjątkowe i stanowi około 0,2% ogólnej populacji. Miałbym szczęście pracować z tak wyjątkowymi osobami. Programowanie ćwiczy mózg, chociaż w ćwiczeniach umysłowych z czasem zwiększa się iloraz inteligencji. W liceum zdobyłem 115, a zaledwie kilka lat temu zdobyłem 124, i to było na oficjalnym monitorowanym teście, a nie jednym z tych fałszywych testów online. Testy online podnoszą wyniki nawet o 10 punktów.
wałek klonowy
@maple Moje własne IQ, ostatni raz mierzone wynosi około 145 (test papierowy, nie online), a we wszystkich miejscach, w których pracowałem, uważałem siebie za średnio mądrego, choć może nieco więcej niż średnio rozsądny. Nie jest to wyjątkowe w branży oprogramowania - programiści nie są wybierani losowo z ogólnej populacji.
Neil Butterworth,
Uważałem się za przeciętnego w branży, ponieważ połowa ludzi, z którymi pracowałem, była mniej sprytna ode mnie, chociaż połowa była bardziej. Jesteś programistą C ++, w którym jestem programistą Java / .NET, więc może to jest różnica? Prawie wszyscy programiści C ++, z którymi pracowałem, uważali mnie za mądrzejszych ode mnie.
wałek klonowy
@maple Tak bym nie pomyślał - ja też mogę pisać w Javie, a wielu programistów Java, których spotkałem, było bardzo sprytnych.
Neil Butterworth,
3

Jeśli nigdy nie ma presji, pracujesz w miejscu, które po prostu nie obchodzi lub zapewnia produkt lub usługę, której nikt nie chce. Częścią wyzwań są wymagania czasowe. Kiedy jest to status quo, prawdopodobnie pracujesz dla kogoś, kto nie wie, co robi lub gorzej. Każdy idiota może poprosić o szybsze zwroty. Następnie rozwijasz personel, który ma zły nawyk zwiększania swoich szacunków. Zmienia się w jedną wielką grę zmarnowanej energii.

Szukać:

  1. Znacząca praca
  2. zasoby do wykonania pracy
  3. szacunek dla Twojej profesjonalnej opinii

Wszystkie są względne. Niektórzy pracują w sektorze finansowym i mogą nie mieć związku między swoją pracą a finansowaniem projektu badawczego w celu leczenia raka lub pozwalania ludziom oszczędzać na emeryturę. Podczas wywiadu oceniasz firmę również pod kątem swoich potrzeb. Zapytaj o to, jak radzą sobie z późnym projektem i dlaczego ta pozycja jest dostępna, jaki jest wskaźnik rotacji pracowników.

JeffO
źródło
1

Z mojego doświadczenia wynika, że ​​presja psychiczna może być bardzo wysoka z powodu pewnych błędów, których można uniknąć.

Myślę, że najtrudniejszą częścią jest jasna komunikacja .

  • Jeśli twój szef da ci zadanie, a termin przypada za dwa tygodnie, ale zajmie ci to 3, czy zostaniesz zwolniony, ponieważ nie jesteś w stanie wykonać?

Jeśli wcześniej powiedziałeś, że poradzisz sobie w dwa tygodnie, to nie jest dobrze. To twój obowiązek ocenić, jak długo powinno trwać do kasy część pracy, aby poinformować go, przed rozpoczęciem pracy.

Czasami trudno jest dokładnie oszacować, zwłaszcza przyznać, że pewne rzeczy mogą potrwać dłużej, niż myślisz. Ale chociaż tworzenie oprogramowania jest bardzo złożone i może być nieco nieprzewidywalne, możesz dać z siebie wszystko, analizując swoje wcześniejsze doświadczenia z podobnymi zadaniami.

To pytanie jest ściśle związane z drugim:

  • Czy masz czas, aby dowiedzieć się więcej o technologii, rozwinąć swoje umiejętności kodowania i się rozwijać, czy też oczekuje się, że już ją poznasz i zaczniesz płonąć w ramach projektu?

Jeśli nie wiesz wystarczająco dużo o technologii, a może, co najważniejsze, nie możesz dokładnie oszacować . A czasem trudno jest to przyznać („oczywiście, że mogę to zrobić, istnieje wiele samouczków związanych z plikiem node.js, na pewno podniosę je za 2 lub 3 dni, aby nic nie opóźniało!”) .

Z drugiej strony może być trudno pamiętać, że nie ucząc się nowych rzeczy tracisz znacznie więcej, niż możesz zarobić, zarabiając dużo pieniędzy (moim zdaniem). Czasami lepiej jest wziąć kilka niezbyt pilnych lub drogich projektów tylko po to, aby nauczyć się nowych technologii, wzorców projektowych itp. W takim przypadku należy wyjaśnić kierownictwu, że twoje szacunki mogą być nieaktualne.

  • Jeśli masz problemy z kodem, czy oczekujesz, że sam go obsłużysz i będziesz pracować niezależnie, czy też możesz poprosić innych o pomoc, jeśli utkniesz?

Chociaż może być kuszące, aby sobie z tym poradzić (komunikacja jest trudna), nie powinieneś tego robić, jeśli problem może uniemożliwić zakończenie projektu na czas.

  • Czy spodziewasz się wielu późnych nocy, aby dotrzymać terminów?

Myślę, że to zależy od firmy i nie jest specyficzne dla programowania pracy. Krótko mówiąc, jeśli pracujesz dużo za późno lub większość współpracowników, prawdopodobnie będziesz się tego spodziewać, co nie jest zbyt dobre i być może lepiej jest go unikać (komunikacja ponownie).

Krótko mówiąc, myślę, że chociaż możliwość presji psychicznej może być wyższa niż w niektórych innych, mniej, jak sądzę, zawody zorientowane na inteligencję, jasna komunikacja i właściwe podejście mogą cię przed tym uratować. Zrób z tego nawyk! =)

Anton Strogonoff
źródło
0

Zajmuję się oprogramowaniem od 5 lat i tak, istnieje presja. Ale powiedz mi jedno zadanie, w którym możesz pracować bez presji.

Krótko mówiąc, pojawi się presja, ale nie będzie tak, że cię zabije (a jeśli ktoś chce, abyś ukończył pracę w ciągu 2 dni, ale według ciebie zajmie to 3 dni, po prostu powiedz grzecznie, że potrzebujesz 3 dni na pracę. Nie sądzę, żeby ktokolwiek miał to na uwadze).

Odpowiadam na to pytanie, ponieważ nie miałem w głowie takich obaw (później zdałem sobie sprawę, że to moje lenistwo sprawiło, że tak pomyślałem).

Przyjdź do oprogramowania i ciesz się.

ankit
źródło