Jestem głównym programistą małej firmy programistycznej. W ciągu ostatnich dwóch lat mój zespół urósł z jednego programisty (mnie) do grupy około dziewięciu osób. Większość z nas to bardzo zdolni, starsi inżynierowie (ponad 20 lat doświadczenia w tworzeniu oprogramowania na osobę), więc generalnie konieczne jest bardzo małe trzymanie się za ręce. Używamy Scruma do zarządzania naszymi wysiłkami i zwykle dużo robimy szybko przy minimalnych pisemnych wymaganiach.
W miarę rozwoju zespołu doszedłem do momentu, w którym trudno mi utrzymać nadzór techniczny nad całym projektem, a także napisać znaczną ilość nowego kodu, więc nadszedł czas, abym dostosował swoją rolę. Jak mogę się najbardziej przydać zespołowi, gdy nie spędzam już więcej czasu na rozwoju?
Moim celem jest umożliwienie mojej grupie dalszego rozwoju (tj. Zwiększenie prędkości Scruma) poprzez dodanie większej liczby programistów , więc nie chcę po prostu zostać „architektem policji”, który narzuca moją wolę zespołowi. Innymi słowy, chcę być facetem, który pomaga rzeczy działać lepiej / płynniej, niż być facetem, który spowalnia rzeczy poprzez dodanie niepotrzebnej warstwy biurokracji. Jedno z naszych głównych zagrożeń polega na tym, że sytuacja wymknie się spod kontroli, jeśli dodamy więcej osób bez wystarczającej struktury, aby utrzymać nas wszystkich na tej samej stronie.
Jaki jest najlepszy sposób na osiągnięcie mojego celu?
źródło
Odpowiedzi:
Jest pewna grupa, o której zapominam, ale to jest jej sedno. Nie wdrażaj procesu, radz sobie z niektórymi z tych kosztów ogólnych / nieefektywności, które naturalnie rozwijają się wraz ze wzrostem wielkości zespołu.
źródło
Nie miałbym problemów z kierownictwem zespołu, który byłby w stanie zrównoważyć obowiązki kierownicze i techniczne, ale ciężko jest znaleźć ludzi, którzy dobrze sobie radzą z zarządzaniem tą równowagą.
Gdybym musiał wybierać między dwiema skrajnościami z kierownika zespołu w rosnącym zespole ... to naprawdę trudny wybór, ale ostatecznie myślę, że chciałbym, aby zespół stał się bardziej menedżerem. W sporym zespole miałbyś nadzieję, że będą inni kandydaci, którzy wkroczą na stanowisko starszego programisty, który może wychowywać nowych członków zespołu i nadal ciężko pracować nad rozwojem.
Ale w rosnącym zespole zdecydowanie chcesz też dobrego menedżera. W rzeczywistości posiadanie dobrej osoby z tytułem kierowniczym jest ważne, ponieważ chcesz, aby miała ona wystarczającą moc, aby podejmować dobre decyzje. Dobry menedżer ma duży wpływ na szczęście zespołu i dokładnie z powodów, które wskazujesz; pomagając utrzymać ich produktywność - i dobre dla Ciebie, jeśli myślisz tak jak Ty. Jest wielu menedżerów, którzy nie dają szczura tyłkowi.
Poleciłbym kilka innych postów tutaj w Programmers. Chociaż są bardziej nastawieni na kierowanie zespołem niż na oficjalną rolę kierowniczą, mogą pomóc:
Przejście do Team Leadera
Jak odnieść sukces jako główny programista?
Jak zdobyć szacunek członków zespołu jako lidera zespołu?
źródło
Myślę, że jest to równowaga między tymi cechami:
OTOH, wywiad jest ważną częścią pozyskania właściwej osoby, polecam zadać następujące pytania podczas wywiadu:
Test FizzBuzz jest absolutnie koniecznością, ponieważ mając rację lub nie, nie jest tak ważny jak:
źródło
inertia of mind
, prawda? Po chwilowym rozwiązywaniu skomplikowanych problemów większość z nas nie widzi prostych rozwiązań prostych problemów.