Czy ludzie, którzy zarabiają na pisanie kodu, ale mają niskie wyniki w „matrycy kompetencji programisty”, mają etyczny obowiązek znaleźć inny rodzaj pracy? [Zamknięte]

20

Ludzie radzą mi, żebym „znalazł pracę wykonującą coś, w czym jesteś dobry”, ale prawda jest taka, że ​​nie wierzę, że jestem dobry w czymkolwiek innym niż pisanie kodu. Nie sądzę jednak, że mogę zaprojektować lub zbudować program.

Nie zrozumcie mnie źle, nie jestem programistą, który nie może napisać programu fizycznego buzza; Bardziej przypominam programistę, który nie może wiele zrobić oprócz wykonania pracy. Nie chodzi o to, że mam postawę „rób minimum”; po prostu boleśnie zdaję sobie sprawę z moich ograniczeń jako programisty.

Na przykład implementacja algorytmu szybkiego sortowania jest czymś, co mógłbym zrobić tylko polegając na zapamiętywaniu na pamięć (to znaczy, jeśli kiedykolwiek znajdę motywację do spędzenia sporej części mojego dnia, próbując zapisać cały algorytm w pamięci, a nie po prostu iść jak „umm, rozumiem, to ma sens, widzę logikę ...”).

Jeśli chodzi o konstruowanie i projektowanie aplikacji, czuję się tak samo bezradny. Ponieważ nie jestem w stanie zobaczyć prawidłowej odpowiedzi na początku, po prostu dzwonię po osąd, którego później dziewięć razy na dziesięć żałuję.

Nadal udaje mi się uzyskać promocje pracy i pochwały od moich współpracowników, więc inni niekoniecznie dzielą się moimi opiniami. Obiektywnie rzecz biorąc, po prostu nie mam ani zdolności uczenia się, ani samej siły mózgu, aby realistycznie dążyć do bycia kimś więcej niż „nieco ponad przeciętnym” programistą.

Zastanawiam się, czy rzeczywiście mam etyczny obowiązek zrobić miejsce dla bardziej utalentowanych ludzi i znaleźć sobie inną pracę, nawet jeśli jestem całkiem pewien, że nie znajdę innej roli, do której jestem lepiej wykwalifikowany. Moje pytanie brzmi zatem: „Czy przeciętni programiści mają miejsce w zespole?”

John Smith
źródło
22
Brzmi dla mnie jak en.wikipedia.org/wiki/Impostor_syndrome . Powiedziałbym, że „obiektywne” spojrzenie na to oznaczałoby przyjrzenie się, co twoi współpracownicy i menedżerowie myślą o twojej pracy, a nie to, co subiektywnie myślisz o niej.
Gort the Robot
50
Kolego, twoim problemem nie jest twoja względna umiejętność pisania kodu. Sam to powiedziałeś: czuję się trochę przygnębiony . Depresja może być poważnym zjawiskiem i nie należy się spodziewać (ani być oczekiwanym), że sam sobie z nią poradzisz. Powinieneś porozmawiać z kompetentnym doradcą. Teraz. Jesteś tego wart. Możesz to zrobić. Ktoś może ci pomóc. Po prostu nie ma tu nikogo.
Caleb
5
Spójrz na efekt Dunninga-Krugera ; błędna ocena własnych umiejętności leży w ludzkiej naturze.
Martijn Pieters
6
Link do Matrycy kompetencji programisty , zakładając, że jest tylko jeden. Podobnie jak w przypadku wielu tego rodzaju rzeczy, jest to w zasadzie duża lista wartości, które według mnie muszą być dobre dla niektórych osób lub grup. Umiejętności wysokiej klasy nie będą potrzebne większości ludzi w większości zawodów, a niektóre osoby mogą nawet nauczyć się rzekomo wysokich umiejętności przed słabszymi. Przykład - najpierw nauka Prologu oznacza, że ​​znasz jeden język z jednego paradygmatu. Dopóki nie nauczysz się innych, nie jest to zaawansowane, jest to po prostu niezwykłe.
Steve314
11
Jeśli potrafisz „wykonać zadanie”, a inni nie będą musieli wykonywać go ponownie, oznacza to, że jesteś już znacznie lepszy niż przeciętny programista.
Dunk

Odpowiedzi:

31

Wręcz przeciwnie, uważam, że ludzie, którzy zdobywają wysokie wyniki w matrycy kompetencji programisty (lub w podobnej mierze) mają etyczny obowiązek nie być elitarnym snobem.

Ted Neward napisał ostatnio fantastyczny wpis na blogu, który moim zdaniem jest tutaj istotny. Oto mój ulubiony cytat z tego:

Nie wszyscy piszący kod muszą być artystami. Szczerze mówiąc, w świecie malarstwa są tacy, którzy spędzą godziny, dni i miesiące, malutkie pędzle w dłoni, słoiki z pigmentem tylko o jeden lumen różnią się od siebie, pracując nad najdrobniejszymi szczegółami, tworząc tylko jeden kawałek ... i są też tacy, którzy malują domy za pomocą rozpylaczy farby, z puszek masowo produkowanego „kremowego beżu”, które można znaleźć w lokalnych Lowes. I wiesz co? Potrzebujemy ich obu.

Za to, co jest warte, tylko pierwszy z tych dwóch bohaterów będzie się męczył nad własnymi możliwościami, tak jak ty.

MattDavey
źródło
3
Ten wpis na blogu jest cholernie fantastyczny. Naprawdę świeże spojrzenie na całą rzecz związaną z programowaniem, aby nakarmić moją rodzinę. Zapomniałem, że ludzie biznesu mogliby dać bzdury na temat tego, jak „czysty” jest mój kod… jeśli to zadziała, każą mi zrobić więcej… i OP, jeśli kodujesz każdego dnia i wciąż się wyświetlasz. , masz to, czego potrzeba ... czego większość nie ma ...
hanzolo
45

Zastanawiam się, czy rzeczywiście mam etyczny obowiązek zrobić miejsce dla bardziej utalentowanych ludzi i znaleźć sobie inną pracę

Nie, ty nie. Jeśli masz, masz etyczny obowiązek dbania o siebie i swoich podopiecznych. Nie brakuje miejsc pracy dla utalentowanych programistów i nie ma powodu, aby interesy ludzi, których prawdopodobnie nawet nie znasz, wyprzedzały własne.

Rzeczywiście, ta strona jest pełna pytań od pracodawców na temat tego, jak znaleźć wykwalifikowanych programistów. Twój pracodawca może mieć szczęście, że cię ma.

Caleb
źródło
19
+1, „masz etyczny obowiązek dbania o siebie i swoich podopiecznych” - Wszyscy na pokładzie pociągu prawdy!
GrandmasterB
11
+1. OP napisał również: „Jestem raczej programistą, który nie może wiele zrobić poza wykonaniem zadania” . Ostatecznie liczy się tylko wykonanie pracy. Wydaje się, że mnóstwo ludzi nie może tego zrobić.
MrFox
7

Nie jesteś etycznie zobowiązany do doskonałości w swojej pracy, a jedynie do robienia tego, co uważasz za wynagrodzenie. Może lepiej będzie robić coś innego związanego z komputerami? Praca z SDET jest prawdopodobnie czymś, z czym byłbyś bardzo komfortowy, ponieważ ogólnie najlepszym sposobem na pokazanie błyskotliwości jako SDET jest pokazanie, dlaczego kod innych ludzi jest wadliwy. To da ci wgląd w to, jak naprawdę jesteś dobry, a także odciąży cię od ramion „Jestem wystarczająco dobry”.

Czytając to, chciałem się upewnić, że wszystko jest jasne: większość programistów jest okropna. Jesteś zbyt ostry dla siebie i pracując jako SDET, będziesz uderzony w twarz tym, jak możesz być bardziej wykwalifikowany do wykonywania swojej pracy, niż myślisz. Zaufaj mi, to zmieniło moje życie. ;)

Nathan C. Tresch
źródło
3

Czytając Twój post myślałem tej osoby co to naprawdę znaczy być wielkim programistą.

Mówisz, że boleśnie zdajesz sobie sprawę ze swoich ograniczeń.

Im bardziej człowiek jest w tej dziedzinie, tym bardziej jest pokorny i świadomy własnych ograniczeń. Duża część opanowania każdego rzemiosła polega na przyznaniu się, jak mało wiesz - i pracuj z tym. Dzięki temu będziesz głodny ulepszeń i nie będziesz stagnował. Użyj tego.

Zaczynasz źle i żałujesz 9 razy na 10.

To się nazywa poznawanie przestrzeni problemowej. Jest to coś, co wymaga lat opanowania (i prawdę mówiąc, nie wiem, czy kiedykolwiek powinieneś je opanować - jeśli wykonasz „właściwe” wezwanie od samego początku - skąd wiesz, że to jest właściwe?). Znalezienie dobrego rozwiązania zazwyczaj wymaga kilku nieudanych prób. Istnieje wiele aktualnych badań dotyczących tego, jak najlepiej uczymy się, popełniając błędy w pięści. Musisz to zrobić tylko w bezpiecznym i pozwalającym środowisku. Upewnij się, że jesteś w takim środowisku, a będziesz się dobrze rozwijać.

Zrobisz wszystko.

To czyste złoto, zarówno od członków zespołu, którzy czekają na dostawę do, jak i na menedżerów. Pamiętasz najważniejszy punkt w każdym projekcie oprogramowania - jeśli nie dostarczysz, nikt nie dostanie zapłaty.

Może być trudno odwrócić głowę, ale wszystkie wymienione przeze mnie punkty uważam za oznaki postępów już bardzo daleko.

jonasl
źródło
1

Nie.

Źli stolarze nie porzucają stolarstwa, po prostu przyznają, że nie są najlepszymi stolarzami, którzy kiedykolwiek żyli, jednocześnie poddając się zwykłym codziennym krzesłom, które robią raczej dobrze przez zwykłe powtarzanie. Istnieje wiele osłów, więc naprawdę potrzebujemy przyziemnych stolarzy, ponieważ Primadonna nudzi się robieniem tanich krzeseł i chcą pochwalić się swoimi talentami poprzez bardziej imponujące konstrukcje, takie jak - powiedzmy stoły.

To nie jest kwestia etyki, ale dojście do maksimum i bycie szczęśliwym z bycia najlepszym, czym możesz być.

John Mee
źródło
Przez chwilę źle zinterpretowałem tam słowo „tyłek”.
Joe Z.
0

Naprawdę mogę się z tym odnosić. Przez całe życie czułem się jak mierny programista i zawsze patrzyłem na ludzi lepszych ode mnie. I szczerze mówiąc, wielu programistów jest lepszych ode mnie. Ale nadal, podobnie jak ty, chwalę się za moją pracę I tak jak ty sprawiam, że moi klienci i szef są szczęśliwi, a nawet awansowałem na starszego inżyniera oprogramowania, więc musimy robić COŚ dobrze. Mimo że odnoszę sukcesy w pracy, wciąż wiem, że są nawet utalentowani młodsi programiści, którzy lepiej radzą sobie z abstrakcyjnymi problemami i pisaniem kodu, aby radzić sobie z nimi w bardziej elegancki i abstrakcyjny sposób. Bardzo ważne jest, abyśmy skupili się na tym, co MOŻEMY zrobić i chwalili się za to. I o wiele ważniejsza jest zmiana sposobu, w jaki patrzymy na to, co osiągnęliśmy, niż próba zostania „dobrym” programistą (lub architektem, przyjacielem lub łyżwiarką na lodzie,

Niektóre rzeczy po prostu nie są w naszym zasięgu. Mógłbym marzyć o stworzeniu niezwykle złożonego projektu z milionem nowych technologii oraz zillionowym kompleksem i pięknymi wzorami programowymi w ciągu dnia, tak jak mój bardzo chwalony kolega Mark. Ale nie mogę. Będę nadal koncentrować się na tym, co mogę zrobić, robiąc to, co w mojej mocy, i szanuję się za to. I myślę, że powinieneś spróbować zrobić to samo. Możesz zacząć od powiedzenia sobie, że bycie programistą oraz chwalenie się i wynagradzanie za swoją pracę to całkiem spore osiągnięcie.

Juliusz
źródło