Jestem na niepewnym stanowisku „zarządzania” zespołem programistów w małej firmie. Mówię „zarządzanie”, ponieważ chociaż przydzielam pracę i udzielam informacji zwrotnej na temat ich wykonania, nie mam możliwości zdyscyplinowania jednostki.
Niektórzy z mojego zespołu nie wiem, co zrobić, nie są w stanie pracować samodzielnie, wymagają ogromnej ilości trzymania się za ręce, a pozostawieni razem sieją spustoszenie w projekcie zwykle do punktu niepowodzenia. Kiedy zdarzy się niepowodzenie, jestem zmuszony uratować projekt i przepchnąć go (czasami kulejąc) przez linię mety.
Tym programistom nie tylko brakuje umiejętności programowania, ale ogólnie umiejętności formułowania rozwiązania problemu w kodzie. Proste rzeczy, takie jak pisanie pętli, są dla nich trudne, nie mówiąc już o zaprojektowaniu i wdrożeniu rozwiązania problemu.
Wypróbowaliśmy programowanie w parach, oferując opłacenie zajęć, kupowanie książek, przeznaczanie czasu w ciągu dnia na szkolenie, a nawet poświęcanie całych dni na szkolenie zespołu.
Razem z innym starszym programistą nie wiemy, co robić, ale nasza produktywność jest ograniczona z powodu konieczności radzenia sobie z tymi osobami na co dzień. Kierownictwo zmusza nas do dawania im pracy, a ich głównym zarzutem jest to, że sprawy nie są wykonywane wystarczająco szybko.
Żaden z członków naszego zespołu zarządzającego nie współpracuje bezpośrednio z żadnym z programistów poza mną i innym starszym programistą. Kierownictwo jest nietechniczne i uważa, że każdy programista jest tworzony jednakowo, i że oczywiście potrzebujemy więcej osób w tych projektach, aby wykonać je szybciej.
Już przygotowuję dokument z sekcjami z „Miesiąca mitycznego człowieka” i „Ukończono kod”, który mam wysłać do kierownictwa, aby zilustrować statystykami, że to, co naprawdę nas powstrzymuje, to przeciąganie przeciętnych ludzi przez cykl rozwoju.
Jakie inne zasoby są dostępne? Książki, artykuły, ogólne porady byłyby pomocne.