{"id":97853,"date":"2020-10-22T14:42:44","date_gmt":"2020-10-22T12:42:44","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/organizacziya-rabochego-proczessa-v-komande-na-it-proekte"},"modified":"2020-11-18T00:58:50","modified_gmt":"2020-11-17T22:58:50","slug":"organizacziya-rabochego-proczessa-v-komande-na-it-proekte","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/organizacziya-rabochego-proczessa-v-komande-na-it-proekte","title":{"rendered":"Organizarea procesului de lucru \u00een echip\u0103 pe un proiect IT","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Salut prieteni. Frecvent, \u00een special \u00een outsourcing, observ aceea\u0219i situa\u021bie. Lipsa unui proces de lucru clar \u00een echipe la diverse proiecte.<\/p>\n<p>Cel mai important este c\u0103 programatorii nu \u00een\u021beleg cum trebuie s\u0103 comunice cu clien\u021bii \u0219i \u00eentre ei. Cum s\u0103 construiasc\u0103 un proces continuu de dezvoltare a unui produs de calitate. Cum s\u0103 \u00ee\u0219i planifice ziua de lucru \u0219i sprinturile.<\/p>\n<p>\u0218i totul se transform\u0103 p\u00e2n\u0103 la urm\u0103 \u00een termene limita dep\u0103\u0219ite, ore suplimentare, certuri constante despre cine este de vin\u0103 \u0219i nemul\u021bumirea clien\u021bilor \u2014 \u00eencotro \u0219i cum se \u00eendreapt\u0103 totul. Destul de des, toate acestea duc la schimbarea programatorilor, iar uneori chiar \u0219i a \u00eentregilor echipe. Pierderea clientului, deteriorarea reputa\u021biei \u0219i a\u0219a mai departe.<\/p>\n<p>\u00centr-o perioad\u0103 anume, am nimerit pe un astfel de proiect, unde existau toate aceste neajunsuri. <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nNimeni nu voia s\u0103 \u00ee\u0219i asume responsabilitatea pentru proiect (o mare platform\u0103 de servicii), fluctua\u021bia de personal era uria\u0219\u0103, clientul pur \u0219i simplu era furios. CEO-ul a venit la mine \u00eentr-o zi \u0219i mi-a spus c\u0103 am experien\u021ba necesar\u0103, a\u0219a c\u0103 \u00ee\u021bi \u00eencredin\u021bez acest proiect. Dac\u0103 e\u0219uezi, vom \u00eenchide proiectul \u0219i vom da afar\u0103 pe toat\u0103 lumea. Dac\u0103 reu\u0219e\u0219ti, va fi grozav, a\u0219a c\u0103 dezvolt\u0103-l cum crezi de cuviin\u021b\u0103. A\u0219a am devenit lider de echip\u0103 pe proiect \u0219i totul a c\u0103zut pe umerii mei.<\/p>\n<p>Primul lucru pe care l-am f\u0103cut a fost s\u0103 dezvolt un proces de lucru de la zero, care corespundea viziunii mele de atunci, \u0219i am scris o fi\u0219\u0103 a postului pentru echip\u0103. Implementarea lui nu a fost simpl\u0103. Dar \u00eentr-o lun\u0103 totul s-a reglat, dezvoltatorii \u0219i clientul s-au obi\u0219nuit, iar lucrurile au \u00eenceput s\u0103 decurg\u0103 deja lini\u0219tit \u0219i confortabil. Pentru a le ar\u0103ta colegilor c\u0103 nu este doar o \u201efurtun\u0103 \u00eentr-un pahar de ap\u0103\u201d, ci o solu\u021bie real\u0103, am preluat un volum maxim de responsabilit\u0103\u021bi, eliber\u00e2nd echipa de rutina nepl\u0103cut\u0103. <\/p>\n<p>Au trecut deja un an \u0219i jum\u0103tate, iar proiectul evolueaz\u0103 f\u0103r\u0103 ore suplimentare, f\u0103r\u0103 \u201ecurse de \u0219obolani\u201d \u0219i f\u0103r\u0103 stresuri de tot felul. Unii din vechea echip\u0103 nu au vrut s\u0103 lucreze \u00een acest mod \u0219i au plecat, \u00een timp ce altora le-a pl\u0103cut c\u0103 au ap\u0103rut reguli transparente. Dar rezultatul este c\u0103 to\u021bi cei din echip\u0103 sunt foarte motiva\u021bi \u0219i cunosc \u00een \u00eentregime un proiect uria\u0219, at\u00e2t front-end, c\u00e2t \u0219i back-end. Inclusiv baza de cod \u0219i \u00eentreaga logic\u0103 de afaceri. Am ajuns chiar la punctul \u00een care nu suntem doar \u201epadloni\u201d, ci venim cu multe procese de afaceri \u0219i caracteristici noi, care s-au dovedit a fi pe placul afacerii.<\/p>\n<p>Prin aceast\u0103 abordare din partea noastr\u0103, clientul a decis s\u0103 comande \u00eenc\u0103 o pia\u021b\u0103 de la compania noastr\u0103, ceea ce nu poate dec\u00e2t s\u0103 ne bucure.<\/p>\n<p>Deoarece func\u021bioneaz\u0103 la proiectul meu, poate c\u0103 va ajuta \u0219i pe altcineva. A\u0219adar, procesul care ne-a ajutat s\u0103 salv\u0103m proiectul:<\/p>\n<p>Procesul de lucru al echipei pe proiectul \u201eProiectul meu preferat\u201d<\/p>\n<p>a) Procesul intern al echipei (\u00eentre dezvoltatori)<\/p>\n<ul>\n<li>Toate sarcinile sunt create \u00een sistemul Jira<\/li>\n<li>Fiecare sarcin\u0103 trebuie s\u0103 fie descris\u0103 c\u00e2t mai detaliat \u0219i s\u0103 efectueze strict o singur\u0103 ac\u021biune<\/li>\n<li>Orice func\u021bionalitate, dac\u0103 este suficient de complex\u0103, este \u00eemp\u0103r\u021bit\u0103 \u00een multe sarcini mici<\/li>\n<li>Echipa lucreaz\u0103 asupra func\u021bionalit\u0103\u021bilor ca asupra unei singure sarcini. La \u00eenceput, facem \u00eempreun\u0103 o func\u021bionalitate, o trimitem pentru testare, apoi lu\u0103m urm\u0103toarea.<\/li>\n<li>Fiecare sarcin\u0103 este marcat\u0103, fie pentru backend, fie pentru frontend<\/li>\n<li>Exist\u0103 tipuri de sarcini \u0219i bug-uri. Este necesar s\u0103 le indic\u0103m corect.<\/li>\n<li>Dup\u0103 finalizarea sarcinii, aceasta este trecut\u0103 \u00een statusul revizuirii codului (\u00een acest timp, se creeaz\u0103 un pull request pentru colegul s\u0103u)<\/li>\n<li>Cel care a \u00eendeplinit sarcina \u00ee\u0219i urm\u0103re\u0219te imediat timpul pentru aceast\u0103 sarcin\u0103<\/li>\n<li>Dup\u0103 verificarea codului, PR-ul este aprobat \u0219i, dup\u0103 aceea, cel care a \u00eendeplinit aceast\u0103 sarcin\u0103, o \u00eembin\u0103 singur \u00een ramura principal\u0103, dup\u0103 care \u00ee\u0219i schimb\u0103 statusul \u00een \u201egata pentru deployment pe dev\u201d <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/ro\/server\/\"   title=\"serverul\" data-wpil-keyword-link=\"linked\">serverul<\/a>.<\/li>\n<li>Toate sarcinile gata de deployment pe serverul dev sunt deployate de team lead (zona sa de responsabilitate), uneori de un membru al echipei, dac\u0103 este ceva urgent. Dup\u0103 deployment, toate sarcinile cu statusul \u201egata pentru deployment pe dev\u201d sunt trecute \u00een statusul \u2014 \u201egata pentru testare pe dev\u201d<\/li>\n<li>Toate sarcinile sunt testate de client<\/li>\n<li>C\u00e2nd clientul testeaz\u0103 sarcina pe dev, o trece \u00een statusul \u201egata pentru deployment pe prod\u201d<\/li>\n<li>Pentru deployment pe prod avem o ramur\u0103 separat\u0103, \u00een care \u00eembin\u0103m master-ul doar \u00eenainte de deployment<\/li>\n<li>Dac\u0103 \u00een timpul test\u0103rii clientul g\u0103se\u0219te bug-uri, acesta returneaz\u0103 sarcina pentru refacere, stabilind statusul \u201ereturnat\u0103 pentru refacere\u201d. Astfel, separ\u0103m sarcinile noi de cele care nu au trecut testarea<\/li>\n<li>\u00cen concluzie, toate sarcinile trec prin parcursul de la creare la finalizare: To Do \u2192 In Development \u2192 Code Review \u2192 Ready deploy to dev \u2192 QA on dev \u2192 (Return to dev) \u2192 Ready deploy to prod \u2192 QA on prod \u2192 Done<\/li>\n<li>Fiecare dezvoltator testeaz\u0103 propriul cod \u00een mod independent, inclusiv ca utilizator al site-ului. Nu este permis\u0103 \u00eembinarea ramurii cu cea principal\u0103 dac\u0103 nu se \u0219tie cu certitudine c\u0103 codul func\u021bioneaz\u0103.<\/li>\n<li>Fiecare sarcin\u0103 are priorit\u0103\u021bi. Priorit\u0103\u021bile sunt stabilite fie de client, fie de liderul echipei.<\/li>\n<li>Dezvoltatorii \u00eendeplinesc mai \u00eent\u00e2i sarcinile prioritare.<\/li>\n<li>Dezvoltatorii pot delega sarcini \u00eentre ei, dac\u0103 au fost identificate bug-uri diferite \u00een sistem sau dac\u0103 o sarcin\u0103 const\u0103 din munca mai multor speciali\u0219ti.<\/li>\n<li>Toate sarcinile create de client ajung la liderul echipei, care le evalueaz\u0103 \u0219i fie cere clientului s\u0103 le revizuiasc\u0103, fie le aloc\u0103 unuia dintre membrii echipei.<\/li>\n<li>Toate sarcinile care sunt gata de deploy pe dev sau prod ajung de asemenea la liderul echipei, care determin\u0103 c\u00e2nd \u0219i cum s\u0103 efectueze deploy-ul. Dup\u0103 fiecare deploy, liderul echipei (sau un membru al echipei) trebuie s\u0103 informeze clientul despre acest lucru. De asemenea, trebuie s\u0103 schimbe statutul sarcinilor la \"gata de testare\" pe dev\/prod.<\/li>\n<li>\u00cen fiecare zi la aceea\u0219i or\u0103 (pentru noi, aceasta este la 12:00) organiz\u0103m o \u00eent\u00e2lnire \u00eentre to\u021bi membrii echipei.<\/li>\n<li>Fiecare persoan\u0103 la \u00eent\u00e2lnire \u00ee\u0219i raporteaz\u0103 activitatea, inclusiv liderul echipei, ce a realizat ieri, ce planific\u0103 s\u0103 fac\u0103 ast\u0103zi, ce nu reu\u0219e\u0219te \u0219i de ce. Astfel, \u00eentreaga echip\u0103 este la curent cu cine se ocup\u0103 de ce \u0219i \u00een ce stadiu este proiectul. Acest lucru ne ofer\u0103 posibilitatea de a prezice \u0219i de a corecta, dac\u0103 este necesar, estim\u0103rile \u0219i termenele limit\u0103.<\/li>\n<li>La \u00eent\u00e2lnire, liderul echipei anun\u021b\u0103 de asemenea toate modific\u0103rile din proiect \u0219i nivelul bug-urilor actuale, care nu au fost identificate de client. Toate bug-urile sunt discutate \u0219i atribuite fiec\u0103rui membru al echipei pentru rezolvare.<\/li>\n<li>La \u00eent\u00e2lnire, liderul echipei aloc\u0103 sarcini fiec\u0103rei persoane, av\u00e2nd \u00een vedere \u00eenc\u0103rc\u0103tura actual\u0103 a dezvoltatorilor, nivelul lor de preg\u0103tire profesional\u0103, precum \u0219i apropierea acelei sarcini de ceea ce face dezvoltatorul \u00een acel moment.<\/li>\n<li>La \u00eent\u00e2lnire, liderul echipei elaboreaz\u0103 o strategie general\u0103 pentru arhitectur\u0103 \u0219i logica de afaceri. Dup\u0103 aceea, \u00eentreaga echip\u0103 discut\u0103 acest lucru \u0219i ia o decizie cu privire la modific\u0103rile necesare sau acceptarea acestei strategii.<\/li>\n<li>Fiecare dezvoltator scrie cod \u0219i construie\u0219te algoritmi de sine st\u0103t\u0103tor \u00een cadrul unei arhitecturi unice \u0219i a unei logici de afaceri. Fiecare poate s\u0103-\u0219i exprime viziunea pentru implementare, dar nimeni nu este constr\u00e2ns s\u0103 fac\u0103 asta \u00eentr-un singur mod. Fiecare decizie este argumentat\u0103. Dac\u0103 exist\u0103 o solu\u021bie mai bun\u0103, dar nu este timp pentru ea acum, se creeaz\u0103 o sarcin\u0103 \u00een JIRA pentru o viitoare refactorizare a unei anumite p\u0103r\u021bi din cod.<\/li>\n<li>C\u00e2nd dezvoltatorul preia o sarcin\u0103, o transform\u0103 \u00een statutul de dezvoltare. Toat\u0103 comunicarea referitoare la clarificarea sarcinii cu clientul revine dezvoltatorului. \u00centreb\u0103rile tehnice pot fi adresate team lead-ului sau colegilor.<\/li>\n<li>Dac\u0103 dezvoltatorului nu-i este clar\u0103 esen\u021ba sarcinii, iar clientul nu a reu\u0219it s\u0103 o explice clar, el trece la urm\u0103toarea sarcin\u0103. Team lead-ul preia sarcina curent\u0103 \u0219i o discut\u0103 cu clientul.<\/li>\n<li>\u00cen fiecare zi, dezvoltatorul trebuie s\u0103 scrie \u00een chatul clientului despre sarcinile la care a lucrat ieri \u0219i la care va lucra ast\u0103zi.<\/li>\n<li>Procesul de munc\u0103 se desf\u0103\u0219oar\u0103 pe baza metodologiei Scrum. Totul este \u00eemp\u0103r\u021bit \u00een sprinturi. Fiecare sprint dureaz\u0103 dou\u0103 s\u0103pt\u0103m\u00e2ni.<\/li>\n<li>Sprinturile sunt create, populate \u0219i \u00eenchise de c\u0103tre team lead.<\/li>\n<li>Dac\u0103 proiectul are termen limit\u0103 stricte, ne str\u0103duim s\u0103 estim\u0103m toate sarcinile. \u0218i form\u0103m un sprint din acestea. Dac\u0103 clientul \u00eencearc\u0103 s\u0103 adauge sarcini suplimentare \u00een sprint, atunci stabilim priorit\u0103\u021bi \u0219i am\u00e2n\u0103m unele sarcini pentru sprintul urm\u0103tor.<\/li>\n<\/ul>\n<p>\nb) Procesul de lucru cu clientul<\/p>\n<ul>\n<li>Fiecare dezvoltator poate \u0219i trebuie s\u0103 comunice cu clientul.<\/li>\n<li>Nu trebuie s\u0103 permitem clientului s\u0103 impun\u0103 propriile reguli de joc. Trebuie s\u0103-i d\u0103m, \u00eentr-un mod politicos \u0219i prietenos, s\u0103 \u00een\u021beleag\u0103 c\u0103 suntem speciali\u0219ti \u00een domeniul nostru \u0219i doar noi ar trebui s\u0103 structur\u0103m procesele de lucru \u0219i s\u0103-l implic\u0103m pe client \u00een acestea.<\/li>\n<li>Ideal, \u00eenainte de a \u00eencepe implementarea oric\u0103rei func\u021bionalit\u0103\u021bi, ar trebui s\u0103 cre\u0103m un diagram\u0103 de flux pentru \u00eentregul proces logic al caracteristicii (workflow). \u0218i s\u0103 o trimitem pentru aprobat clientului. Aceasta se refer\u0103 doar la func\u021bionalit\u0103\u021bi complexe \u0219i non-occhioase, de exemplu, sistemul de plat\u0103, sistemul de notific\u0103ri etc. Aceasta va permite o \u00een\u021belegere mai precis\u0103 a ceea ce are nevoie clientul, s\u0103 p\u0103str\u0103m documenta\u021bia pentru caracteristic\u0103 \u0219i s\u0103 ne asigur\u0103m c\u0103 clientul nu poate spune \u00een viitor c\u0103 nu am f\u0103cut ceea ce a cerut.<\/li>\n<li>Toate diagramele \/ schemele \/ logica etc. le p\u0103str\u0103m \u00een Confluence \/ Jira, unde cerem clientului s\u0103 confirme \u00een comentarii corectitudinea implement\u0103rii viitoare.<\/li>\n<li>\u00cencerc\u0103m s\u0103 nu supraaglomer\u0103m clientul cu detalii tehnice. Dac\u0103 avem nevoie de \u00een\u021belegerea dorin\u021belor clientului, desen\u0103m algoritmi foarte simplifica\u021bi sub form\u0103 de scheme, pe care clientul le poate \u00een\u021belege \u0219i corecta \/ \u00eembun\u0103t\u0103\u021bi singur.<\/li>\n<li>Dac\u0103 clientul descoper\u0103 un bug \u00een proiect, cerem s\u0103-l descrie foarte detaliat \u00een Jira. \u00cen ce circumstan\u021be a ap\u0103rut, c\u00e2nd, ce succesiune de ac\u021biuni a efectuat clientul \u00een timpul test\u0103rii. Cerem s\u0103 ata\u0219eze capturi de ecran.<\/li>\n<li>\u00cencerc\u0103m s\u0103 facem deploy \u00een fiecare zi, maximum o dat\u0103 la dou\u0103 zile pe serverul de dezvoltare. Clientul \u00eencepe astfel s\u0103 testeze func\u021bionalitatea \u0219i proiectul nu st\u0103 degeaba. Acest lucru este un semn pentru client c\u0103 proiectul este \u00een dezvoltare complet\u0103 \u0219i nimeni nu-i spune pove\u0219ti.<\/li>\n<li>Foarte des se \u00eent\u00e2mpl\u0103 ca clientul s\u0103 nu \u00een\u021beleag\u0103 pe deplin ce are nevoie. Deoarece \u00ee\u0219i creeaz\u0103 o afacere nou\u0103, cu procese \u00eenc\u0103 ne\u00eencadrate. De aceea, un caz frecvent este situa\u021bia \u00een care arunc\u0103m la gunoi \u00eentregi buc\u0103\u021bi de cod \u0219i refacem logica aplica\u021biei. Din aceasta rezult\u0103 c\u0103 nu este necesar s\u0103 acoperim absolut totul cu teste. Are sens s\u0103 acoperim cu teste doar func\u021bionalitatea critic\u0103 \u0219i asta cu anumite condi\u021bii.<\/li>\n<li>Sunt situa\u021bii \u00een care echipa realizeaz\u0103 c\u0103 nu ne \u00eencadr\u0103m \u00een termenele limit\u0103. Atunci facem un audit rapid al sarcinilor \u0219i vom informa imediat clientul. Ca solu\u021bie, propunem s\u0103 lans\u0103m la timp func\u021bionalitatea important\u0103 \u0219i critic\u0103, l\u0103s\u00e2nd restul pentru post-releases.<\/li>\n<li>Dac\u0103 clientul \u00eencepe s\u0103 inventeze diferite sarcini din cap, s\u0103-\u0219i foloseasc\u0103 imagina\u021bia \u0219i s\u0103 explice pe degete, atunci \u00eei cerem s\u0103 ne ofere un mockup al paginii \u0219i un flux cu logica, care s\u0103 descrie complet comportamentul \u00eentregului mockup \u0219i al elementelor sale.<\/li>\n<li>\u00cenainte de a prelua orice sarcin\u0103, trebuie s\u0103 ne asigur\u0103m c\u0103 aceast\u0103 caracteristic\u0103 era inclus\u0103 \u00een condi\u021biile contractului nostru. Dac\u0103 este o caracteristic\u0103 nou\u0103, care dep\u0103\u0219e\u0219te acordurile noastre ini\u021biale, trebuie s\u0103 o estim\u0103m ((timpul aproximativ de execu\u021bie + 30%) x 2) \u0219i s\u0103 inform\u0103m clientul c\u0103 ne va lua at\u00e2t de mult timp, plus c\u0103 termenul limit\u0103 se va muta cu timpul estimat \u00eenmul\u021bit cu doi. Dac\u0103 reu\u0219im s\u0103 finaliz\u0103m sarcina mai repede \u2014 minunat, toat\u0103 lumea va avea de c\u00e2\u0219tigat. Dac\u0103 nu, ne-am luat m\u0103suri de precau\u021bie.<\/li>\n<\/ul>\n<p>\nb) Ce nu accept\u0103m \u00een echip\u0103:<\/p>\n<ul>\n<li>Lipsa de responsabilitate, dezorganizarea, uitarea<\/li>\n<li>\u00cent\u00e2rzierile nejustificate. Dac\u0103 nu po\u021bi finaliza o sarcin\u0103, nu \u0219tii cum, trebuie s\u0103 anun\u021bi imediat team lead-ul, nu s\u0103 a\u0219tep\u021bi p\u00e2n\u0103 \u00een ultima clip\u0103.<\/li>\n<li>L\u0103ud\u0103ro\u0219enia \u0219i vanitatea din partea unei persoane care nu \u0219i-a demonstrat \u00eenc\u0103 abilit\u0103\u021bile \u0219i profesionalismul prin fapte. Dac\u0103 a demonstrat, atunci acceptabil, \u00een limitele bunului sim\u021b \ud83d\ude42<\/li>\n<li>\u00cen\u0219el\u0103toria \u00een orice form\u0103. Dac\u0103 sarcina nu este finalizat\u0103, nu trebuie s\u0103 schimbi statutul ei \u00een finalizat\u0103 \u0219i s\u0103 scrii \u00een chatul clientului c\u0103 este gata. S-a defectat computerul, a c\u0103zut sistemul, c\u00e2inele a mestecat laptopul \u2014 toate acestea sunt inacceptabile. Dac\u0103 se \u00eent\u00e2mpl\u0103 un real for\u021b major, team lead-ul trebuie s\u0103 fie anun\u021bat imediat.<\/li>\n<li>C\u00e2nd specialistul este tot timpul offline \u0219i este greu de contactat \u00een timpul orelor de lucru.<\/li>\n<li>Toxicitatea \u00een echip\u0103 nu este acceptat\u0103! Dac\u0103 cineva nu este de acord cu ceva, atunci to\u021bi se adun\u0103 la o \u00eent\u00e2lnire \u0219i discut\u0103 \u0219i solu\u021bioneaz\u0103.<\/li>\n<\/ul>\n<p>\u0218i o serie de \u00eentreb\u0103ri\/teze pe care le pun uneori clientului meu pentru a elimina orice neclaritate:<\/p>\n<ol>\n<li>Care sunt criteriile dumneavoastr\u0103 de calitate?<\/li>\n<li>Cum determina\u021bi dac\u0103 exist\u0103 probleme \u00een proiect sau nu?<\/li>\n<li>\u00cenc\u0103lc\u00e2nd toate recomand\u0103rile \u0219i sfaturile noastre de modificare\/\u00eembun\u0103t\u0103\u021bire a sistemului, toate riscurile le asuma\u021bi doar dumneavoastr\u0103<\/li>\n<li>Orice modific\u0103ri majore ale proiectului (de exemplu, tot felul de fluxuri suplimentare) vor duce la o posibil\u0103 apari\u021bie a bug-urilor (pe care le vom corecta, desigur)<\/li>\n<li>Nu este posibil s\u0103 \u00een\u021belegi \u00eentr-un minut ce problem\u0103 a ap\u0103rut \u00een proiect, cu at\u00e2t mai pu\u021bin s\u0103 o repari imediat<\/li>\n<li>Noi lucr\u0103m pe un flux de produse concret (Sarcinile \u00een Jira \u2014 Dezvoltare \u2014 Testare \u2014 Deploiere). Asta \u00eenseamn\u0103 c\u0103 nu putem reac\u021biona la toate cererile \u0219i pl\u00e2ngerile din chat<\/li>\n<li>Programatorii sunt programatori, nu testeri profesioni\u0219ti \u0219i nu pot asigura calitatea corespunz\u0103toare a test\u0103rii proiectului.<\/li>\n<li>Responsabilitatea pentru testarea final\u0103 \u0219i acceptarea sarcinilor \u00een produc\u021bie v\u0103 revine \u00een totalitate.<\/li>\n<li>Dac\u0103 am \u00eenceput deja o sarcin\u0103, nu putem trece imediat la altele p\u00e2n\u0103 nu finaliz\u0103m curenta (altfel, asta duce la mai multe bug-uri \u0219i la cre\u0219terea timpului de dezvoltare).<\/li>\n<li>Num\u0103rul persoanelor din echip\u0103 s-a redus (din cauza concediilor sau bolilor), iar volumul de munc\u0103 a crescut, astfel c\u0103 nu putem reac\u021biona fizic la tot ceea ce dori\u021bi.<\/li>\n<li>Cererea dumneavoastr\u0103 de a face deploy \u00een produc\u021bie f\u0103r\u0103 sarcini testate pe dev este un risc care v\u0103 apar\u021bine, nu al dezvoltatorilor.<\/li>\n<li>C\u00e2nd formula\u021bi sarcini neclare, f\u0103r\u0103 un flux corespunz\u0103tor, f\u0103r\u0103 designuri, acest lucru necesit\u0103 din partea noastr\u0103 mult mai mult efort \u0219i timp de execu\u021bie, deoarece trebuie s\u0103 facem munc\u0103 suplimentar\u0103 \u00een locul dumneavoastr\u0103.<\/li>\n<li>Orice sarcini legate de bug-uri, f\u0103r\u0103 o descriere detaliat\u0103 a apari\u021biei lor \u0219i capturi de ecran, nu ne ofer\u0103 posibilitatea de a \u00een\u021belege ce a mers prost \u0219i cum s\u0103 recre\u0103m acest bug.<\/li>\n<li>Proiectul necesit\u0103 \u00eembun\u0103t\u0103\u021biri constante pentru a cre\u0219te performan\u021ba \u0219i securitatea. De aceea, echipa \u00ee\u0219i rezerv\u0103 o parte din timp pentru aceste \u00eembun\u0103t\u0103\u021biri.<\/li>\n<li>Datorit\u0103 faptului c\u0103 avem uneori ore suplimentare (fix\u0103ri urgente), trebuie s\u0103 le compens\u0103m \u00een alte zile.<\/li>\n<\/ol>\n<p>\nDe obicei, clientul \u00een\u021belege imediat c\u0103 lucrurile nu sunt at\u00e2t de simple \u00een dezvoltarea software-ului \u0219i c\u0103 doar dorin\u021ba nu este suficient\u0103.<\/p>\n<p>Asta e tot. Las \u00een afara scenei numeroase negocieri \u0219i \u00eenceputul tuturor proceselor, dar \u00een cele din urm\u0103 totul s-a reglat. Pot spune c\u0103 acest proces a devenit pentru noi un fel de 'glon\u021b de argint'. Noii oameni care au venit \u00een proiect au putut s\u0103 se apuce de lucru din prima zi, deoarece toate procesele sunt documentate, iar documenta\u021bia \u0219i arhitectura \u00een form\u0103 de diagrame ofereau imediat o imagine de ansamblu despre activit\u0103\u021bile noastre. <\/p>\n<p><i>P. S. Vreau s\u0103 subliniez c\u0103 nu avem un manager de proiect de partea noastr\u0103. El este de partea clientului. Nu este tehnic. Proiectul este european. Toat\u0103 comunicarea se face doar \u00een englez\u0103.<\/i><\/p>\n<p>Mult succes \u00een proiecte. Nu v\u0103 epuiza\u021bi \u0219i \u00eencerca\u021bi s\u0103 v\u0103 \u00eembun\u0103t\u0103\u021bi\u021bi procesele.<\/p>\n<p>Sursa este \u00een m\u00e2inile mele. <noindex><a rel=\"nofollow\" href=\"https:\/\/cleverman.org\/post\/organizaciya-rabochego-processa-v-komande-na-it-proekte\">blog<\/a><\/noindex>.<br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/524460\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u0432\u0435\u0442 \u0434\u0440\u0443\u0437\u044c\u044f. \u0421\u043f\u043b\u043e\u0448\u044c \u0438 \u0440\u044f\u0434\u043e\u043c, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0432 \u0430\u0443\u0442\u0441\u043e\u0440\u0441\u0435, \u044f \u0432\u0438\u0436\u0443 \u043e\u0434\u043d\u0443 \u0438 \u0442\u0443 \u0436\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u0443. \u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0447\u0435\u0442\u043a\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u0445 \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445. \u0421\u0430\u043c\u043e\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0435 \u2014 \u044d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u044b \u043d\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u044e\u0442, \u043a\u0430\u043a \u043d\u0443\u0436\u043d\u043e \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441 \u0437\u0430\u043a\u0430\u0437\u0447\u0438\u043a\u043e\u043c \u0438 \u0434\u0440\u0443\u0433 \u0441 \u0434\u0440\u0443\u0433\u043e\u043c. \u041a\u0430\u043a \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430. \u041a\u0430\u043a \u0441\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0432\u043e\u0439 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c \u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-97853","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442 \u0434\u0440\u0443\u0437\u044c\u044f. \u0421\u043f\u043b\u043e\u0448\u044c \u0438 \u0440\u044f\u0434\u043e\u043c, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0432 \u0430\u0443\u0442\u0441\u043e\u0440\u0441\u0435, \u044f \u0432\u0438\u0436\u0443 \u043e\u0434\u043d\u0443 \u0438 \u0442\u0443 \u0436\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u0443.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/organizacziya-rabochego-proczessa-v-komande-na-it-proekte\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u043d\u0430 IT-\u043f\u0440\u043e\u0435\u043a\u0442\u0435 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0438\u0432\u0435\u0442 \u0434\u0440\u0443\u0437\u044c\u044f. \u0421\u043f\u043b\u043e\u0448\u044c \u0438 \u0440\u044f\u0434\u043e\u043c, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0432 \u0430\u0443\u0442\u0441\u043e\u0440\u0441\u0435, \u044f \u0432\u0438\u0436\u0443 \u043e\u0434\u043d\u0443 \u0438 \u0442\u0443 \u0436\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u0443.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/organizacziya-rabochego-proczessa-v-komande-na-it-proekte\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-22T12:42:44+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-11-17T22:58:50+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Organizarea fluxului de lucru \u00een echip\u0103 pe un proiect IT | ProHoster","description":"Salut prieteni. \u00centotdeauna, mai ales \u00een outsourcing, v\u0103d aceea\u0219i situa\u021bie.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/organizacziya-rabochego-proczessa-v-komande-na-it-proekte","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u043d\u0430 IT-\u043f\u0440\u043e\u0435\u043a\u0442\u0435 | ProHoster","og:description":"\u041f\u0440\u0438\u0432\u0435\u0442 \u0434\u0440\u0443\u0437\u044c\u044f. \u0421\u043f\u043b\u043e\u0448\u044c \u0438 \u0440\u044f\u0434\u043e\u043c, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0432 \u0430\u0443\u0442\u0441\u043e\u0440\u0441\u0435, \u044f \u0432\u0438\u0436\u0443 \u043e\u0434\u043d\u0443 \u0438 \u0442\u0443 \u0436\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u0443.","og:url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/organizacziya-rabochego-proczessa-v-komande-na-it-proekte","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-22T12:42:44+00:00","article:modified_time":"2020-11-17T22:58:50+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"97853","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:11:34","updated":"2022-10-03 07:12:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/97853","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=97853"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/97853\/revisions"}],"predecessor-version":[{"id":172897,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/97853\/revisions\/172897"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=97853"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=97853"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=97853"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}