Czas na e-biznes (blog grafików, programistów, webmasterów)
Ostatnio pisalem, ze u mnie w firmie jest troche balaganu i dostalem projekt bez dokuementacji. Teraz chce napisac, ze jest tu nie tylko burdel, ale tez kilka rzeczy dobrych :)
Czesc techniczna naszego osrodka (biura?) jest zorganizowana w kilka dzialow, ktore wspolpracuja: architekci, developerzy, quality assurance (testerzy). Do tego jest dolozone jest troche ludzi nietechnicznych: managerowie i project managerowie.
Przygotowanie projektu wyglada tak, ze najpierw odbywaja sie narady managerow z klientami na tzw. wysokim bullshit levelu, duzo power pointa, wyciaganie podstawowych requirementow, budzety itd. Potem do rozmow przystepuja PMowie, ktorzy z PMami klienta ustalaja co i jak bedzie tworzone i wdrazane. W tym samym czasie powstaje team projektu, jakis PM, tech leader i developerzy. Tech leaderzy ustalaja z technicznymi po stronie klienta jak ma byc zaimplementowane to, co panowie wyzej ustalili. Developerzy dostaja dokument z podzialem pracy, terminami, wytycznymi itd. I projekt rusza. Build team co tydzien robi buildy z aktualna wersja projektu, ktore testerzy moga juz testowac.
Do tej pory bylem przyzwyczajony do projektow, gdzie jest ktos (przewaznie techniczny) kto najpierw ustala z klientem co chce zrobic, potem wymysla jak, a potem to implementuje sam lub z jakimis developerami do pomocy. Wydawalo mi sie to naturalne i jedynie sluszne. W tej chwili juz bym nigdy nie chcial wrocic do takiego rozwiazania. Dlaczego? Bo tutaj kazdy robi to w czym jest dobry. Developer nie marnuje czasu na rozmowe z klientem, polbogowie z architecture teamu nie marnuja swojego (drogiego) czasu na implementowanie, tech leaderzy nie spotykaja sie z ludzmi, ktorzy nie rozumieja implementacji itd. Jednoczesnie dzieki temu developerem mozna byc majac naprawde srednie pojecie o tym co sie robi - nad wszystkim czuwa kilka osob wyzej. Czy to wada czy zaleta tego jeszcze nie jestem pewny.
webjay
czerwiec 24th, 2007 at 20:23:50
heh, jak bede mial chwilunie po polnocy to cos Tobie Marcinie napisze ;)
webjay
czerwiec 26th, 2007 at 01:45:05
Marcin: napisz mi tylko ile jest poszczegolnych ‘figurantow’ ;) tak na oko/mniej wiecej
webjay
czerwiec 27th, 2007 at 01:26:53
no i zostalem calkowicie zlany… :~~~~~(
marcin gorecki
czerwiec 27th, 2007 at 12:15:20
Nie zlany, przyjedziesz na spot, to Ci powiem :P
A tak serio, to ciezko mi odpowiedziec na to pytanie. Developerow jest najwiecej (na roznych poziomach, od zera po naprawde dobrych), managerow kilku, architektow tez kilku.
webjay
czerwiec 27th, 2007 at 19:58:14
przyjechac na spot? dobrze, ze zartujesz… ;)
wracajac do tematu: macie pewnie z 50 osob na skladzie, to raczej mnie to nie dziwi. wiem tez, ze przy tego typu duzych grupach, jak 50, 100 - dzieli sie programistow na male paczki, po 4-6. w tej paczce jeden najbardziej lebski jest ‘kierownikiem’. Bierze sie kilku takich kierownikow i daje im znow jednego superlebskiego. I od gory, poprzez superlebskich, do lebskich i zwyklych programistow trafiaja ustalenia, a raporty znow odwrotnie od dolu. caly guru team ma tylko do czynienia z superlebskimi i juz nie wnika nizej na reszte programistow.
inaczej po prostu chyba nie da sie tego podzielic - wiec wychodzi system wojskowy ;)
przy srednich grupach - typu 15-20 osob na projekt IMHO zawsze powinno sie tez podzielic ludzi na okreslone grupy robiace w swoim gronie poszczegolne czesci systemu + jeden superlebski. Do tego najlepiej, gdy osobno jest analityk, ktory szuka dziury w calym + osobno architekt, ktory powinien znac odpowiedz na kazde pytanie. PM jako taki nie powinien zajmowac sie praca zespolu - tylko odpowiadac za ew. przekazywanie ustalen co do terminow / finansow i tym podobnych pierdol. role komunikacyjna dot. aplikacji firma-klient powinien sprawowac architekt lub jego pomocnik - wtedy nie ma rozjazdu pomiedzy tym co klient zamowil / a dostal.
to ostatnie moze nieco dziwic, ale wiem, ze sprawdzilo sie doskonale.
z kolei czym mniejsza grupa, tym bardziej stawialbym na samodzielnosc programisty i jego zabieral na wszystkie spotkania, a w trakcie prac to jego wlasnie wystawil na bezposredni kontakt z klientem.
zreszta - kazdy z nas wali / walil jakies fuchy - jak idzie to przez jakas zewnetrzna firme (jestesmy podwykonawca), to zazwyczaj jest kapa na linii komunikacyjnej. chociaz, jak jest ktos dobry po srodku, to wszystko idzie z platka.
***
najwazniejszy jest i tak zawsze dobry zespol, ktory juz sie troche poobijal ze soba ;)
i zawsze w teamie przydaje sie tzw. ‘idiota’, bo choc denerwuje, to czasem zada pytanie, o ktorym nikt wczesniej nie pomyslal i nieraz uprzedzi problemy.
no i tak, praktyka teoria, teoria praktyka - ale przy innym zespole, innym kliencie, innym projekcie, czy nawet w innym kraju moze byc calkiem inaczej ;)