Jak obsługiwać egocentrycznych programistów?


15

Pozwól mi to trochę wyjaśnić.

W poprzedniej pracy miałem współpracownika, który ma dobrą reputację w zarządzie. Zawsze kończył na czas. A szefowie byli zadowoleni z jego postępów, więc otrzymał pewne przywileje.

Problem polegał na tym, że inni programiści znali jego tajemnicę. Zoptymalizował regułę 80/20, więc przepracował 20 procent czasu, aby ukończyć 80 procent kodu. Pozostałe (twarde) 20% pozostawiono programistom utrzymania ruchu. Kto (co nie dziwi) został ukarany za brak postępów. Ponieważ jednak ten programista miał dobrą reputację w zarządzie, przeniesienie winy na niego było prawie niemożliwe. (Na szczęście opuścił firmę).

Moje pytanie brzmi: co zrobić jako zespół programistów, jeśli masz takiego programistę w swoim zespole. Czy próbujesz ostrzec kierownictwo przed ryzykiem zrujnowania własnych szans? Czy akceptujesz fakt? Czy są też inne opcje.


6
Nie jestem pewien, czy „egocentryczny” jest właściwym terminem. Spróbowałbym czegoś w rodzaju „oszukańczego”.
Wizard


2
Prawdziwa historia: Tak powstał UNIX i zrodził on całe pokolenie podobnie myślących programistów. Zobacz Gorzej jest lepiej .
imgx64,

Jeśli możesz głosować i uważasz, że jest to przydatne pytanie lub poniżej znajdziesz przydatne odpowiedzi, zagłosuj. Witryny StackExchange potrzebują głosów, aby zbudować dobrą społeczność. Możesz dać 30 głosów dziennie, nie marnuj ich. Szczególnie użytkownicy o wysokiej reputacji i niskiej liczbie
Maniero

Jednostki są niezgodne z czasem 20% i kodem 80%. Po prostu zostaw to w miejscu: „Pracował nad 80%, które było łatwe, i zostawił 20%, które były trudne dla reszty zespołu”.
Huperniketes

Odpowiedzi:


13

Spróbuj wdrożyć zespół weryfikujący kod. Wygląda na to, że ten programista pracował solo nad projektem bez interakcji zespołu. Spróbuję zachęcić do bardziej zespołowego przepływu pracy, aby nie mógł po prostu nadepnąć na wszystko, a następnie zostawić to na twoich drzwiach.


1
Wdrażaj rzeczywiste wskaźniki tego, czym jest standardowy zakres jednostek roboczych, uwzględniaj rzeczywiste czynniki programowania, a nie to, co myśli kierownictwo (tj. Więcej LOC = lepszy programista).
Incognito,

8

Ludzie powinni popierać to, co rozwijają, w przeciwnym razie nigdy nie nauczą się rozwijać rzeczy, które mogą być obsługiwane.

Realistycznie nie zawsze można to zrobić w 100% przypadków, ale nawet trochę wystarczy, aby przez większość czasu rozwiązać ten problem.


6

Wygląda na to, że jest to podstawowy problem ze sposobem śledzenia pracy lub zarządzania projektami.

Inżynier lub grupa inżynierów powinna być odpowiedzialna za zapewnienie kompletnych funkcji i funkcjonalności. Nie jest to wykonywane, dopóki nie zostanie wysłane lub uruchomione bez problemów.

Jeśli pozwolisz komuś pracować tylko nad wybranymi elementami projektu, zawsze będziesz ofiarą politycznej gry systemu.

Wygląda na to, że ta osoba była bardzo skuteczna w zbieraniu wiśni bez dostarczania wartości.


5

Czy kierownictwo dzieli wymagania na zadania? Jeśli nie, to leży Twój problem.

Programista nie może ukończyć 80% wszystkiego, jeśli byłby zamknięty tylko na zadaniach, na których powinien być, a następnie zamiast spędzać czas na innych zadaniach, mógł spędzać czas na doskonaleniu własnych zadań. Testowanie, dokumentacja, refaktoryzacja, kolejne zadanie, które jest w jego harmonogramie ...


Kilka lat temu był na poprzedniej pracy. Zarządzanie nie było zbyt dobre i wiem tylko, że firma już nie istnieje.
Toon Krijthe,

3

Cały zespół musi skopać mu tyłek! Uwierz mi, jego zachowanie zmieni się na zawsze.


2

Jestem zdumiony, gdy siedzę na spotkaniu, a menedżer decyduje, czy dodać funkcję, aby nie musiała stawiać czoła konkretnej osobie, która zawsze wścieka się, gdy otrzymuje zadania. Zwracam uwagę, że może powinienem się wściekać, kiedy ktoś o to poprosi. Mój szef szybko wspomina, że ​​to zły pomysł, tak jak powinna.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.