Treba da imate kompletan tim. Tim mora da zna šta da radi kad naiđe na nešto sa čim ne može da se nosi
Svaki član tima mora da zna kome treba da se obrati da bi rešio određeni problem ili zadatak. Problemi nastaju kada zahtevi nemaju nikoga da ih reši do kraja.
U najmanju ruku, potreban vam je klijent, menadžer projekta, dizajner, front-end programer, back-end programer i stariji inženjer. Jedan dovoljno iskusni inženjer može raditi sve ostale poslove osim dizajnerskog i klijentskog, ali zapravo mora znati šta radi.
Većina full-stack programera nije dovoljno zrela da bi mogli pravilno upravljati projektima, niti razumeju sveukupne koncepte razvoja softvera dovoljno da bi postali dobar menadžer projekata. Mogu da rade u svim delovima aplikacije, ali ne znaju dovoljno da bi mogli donositi odluke koje smanjuju verovatnoću grešaka u krađi vremena.
Stalno gasi vatre, nikad ne stigavši do tačke u kojoj vešto rukuju tehnikom.
Jednom kada postavite sve ljudske resurse, ceo tim treba da popravi svoj radni tok da bi se poboljšala brzina. Jedan član tima koji radi brže od ostalih neće brže realizovati projekat. To je timski napor.
Vaš stariji inženjer je najvažniji član celog tima. Kad stvari idu u pogrešnom pravcu, on je taj koji to mora popraviti. On je taj koji mora da održava standarde kodiranja. On je taj koji je odgovoran za arhitekturu projekta.
Ako je stariji inženjer loše odabran, recimo ako dolazi iz oblasti bezbednosnog IT sistema i očekuje se da on orkestrira brze promene, onda će napraviti pogrešne tehnološke izbore a samim tim će smanjiti brzinu razvoja. Ako je dobro izabran i ima dobar radni odnos sa klijentom, onda to zaista može ubrzati.
Problem je u tome što su dobri stariji inženjeri skupi i teško se nalaze.
. Konačno, poslovođa mora da odluči da li žele tim visokih performansi ili ne. Ako to uradi, cena koju oni plaćaju je jedna povoljna cena. Ako to ne uradi, onda svi u timu postaju proslavljeni vatrogasci. Stalno gasi vatre, nikad ne stigavši do tačke u kojoj vešto rukuju tehnikom.