Datoria tehnică ucide broaștele

În introducerea Programatorului pragmatic, există un capitol intitulat Supă de piatră și broaște fierte. Autorii evocă faimoasa metaforă a broaștelor fierte:

tehnică

Dacă puneți broaște în apă rece și apoi creșteți treptat temperatura apei, broaștele vor sta liniștite în locul lor până vor fi gătite complet când apa fierbe. Pe de altă parte, dacă arunci o broască direct în apă clocotită, aceasta va găsi imediat puterea de a se extrage din acest mediu ostil.

În acest articol, voi folosi această metaforă pentru a dezvolta ideea că datoria tehnică este probabil să producă un mediu similar cu cel în care se află broaștele nefericite.

Pe baza experienței mele, am putut observa că anumite fapte care generează datorii tehnice au un impact negativ real asupra psihicului actorilor care se confruntă cu aceștia și mă gândesc în special la cei care se află în centrul profesie de dezvoltare; dezvoltatorii înșiși.

Conceptul de datorie tehnică începe să fie bine cunoscut în lumea dezvoltării de software, iar profesioniștii îl invocă din ce în ce mai mult pentru a avertiza asupra strategiilor pe termen scurt pe care uneori suntem tentați să le punem în aplicare.

În formula tehnică a datoriei, cel mai puternic termen este evident datoria. Aceasta este adevărata descoperire conceptuală a acestei formule. O datorie este o datorie care va trebui achitată în viitor, dar care nu poate fi evitată. Se recunoaște, de asemenea, că datoria este inevitabilă; este un fenomen natural (gândiți-vă la noțiunea de investiție care este însoțită de datorii) pe care este pur și simplu necesar să îl controlați.
O datorie tehnică care nu ar fi absorbită poate duce chiar la un fenomen de supra-îndatorare tehnică; o situație în care tot efortul tehnic este utilizat pentru a plăti dobânda datoriei.

Acest lucru fiind înțeles, termenul tehnic are în cele din urmă o pondere mai mică în acest concept. Toată lumea este liniștită gândind că tehnica, ajungem întotdeauna la final. Într-o zi îl vom găsi pe magicianul care deține rețeta miracolului sau vom arunca totul și vom rescrie totul.

Cu toate acestea, există un efect al datoriilor tehnice care este mai greu de luat în considerare, deoarece nu este exact tehnic; acesta este efectul pe care îl induce asupra psihologiei și, prin urmare, asupra comportamentului actorilor cheie din industria noastră. Am numit dezvoltatorii.

Deci, dacă ne întoarcem la broaștele noastre, rolul vasului de apă fierbinte va fi jucat de datoria tehnică, iar rolul broaștelor va fi jucat de dezvoltatori.

Datoria tehnică face ca experiența dezvoltatorului să fie mai dureroasă și munca mai dificilă. Așa că tind să cred că cei care suferă cel mai devreme datorii tehnice sunt dezvoltatorii înșiși.

Menținerea unui cod prea vechi sau slab scris, utilizarea unui cadru de dezvoltare care nu mai satisface nevoile actuale, lipsa instrumentelor potrivite, imposibilitatea de a diagnostica sau testa codul dvs. sunt experiențe frustrante care vor dezvolta treptat dezvoltatorii într-o stare de disconfort.
Efectele asupra moralului sunt reale.

  • Descurajare
  • Lentoare
  • Scăderea motivației (Bore-out)
  • Pierderea creativității
  • Abilități de eroziune

Sentimentele negative pot induce un comportament dăunător bunei funcționări a echipei

  • Neîncredere
  • Amărăciune
  • Rezistenţă
  • Individualism

În cele din urmă, vom vedea că datoria tehnică tinde să imobilizeze dezvoltatorii, să-i lipsească de orice capacitate de acțiune, cum ar fi broaștele incapabile să găsească energia pentru a se extrage dintr-un mediu pe care nici nu își dau seama că o face. ucigându-i.

Epuizarea facultăților dezvoltatorilor are un impact amplificat asupra echipei. În timp ce profesia de dezvoltare necesită tot mai multe interacțiuni, schimburi și dinamism, datoria tehnică tinde să distrugă munca în echipă și spiritul de colaborare.

La nivel de management, suntem adesea conștienți de problemele tehnice ale datoriilor, pe de o parte, și de problemele umane, pe de altă parte. Dar punerea în relație a acestor două fenomene nu este atât de ușoară. Nu este ușor să ajungeți la îndemâna dezvoltatorilor; când intri în management, pierzi rapid teren cu tehnica.
În plus, tehnologiile evoluează foarte rapid, managerii se confruntă permanent cu cereri de reînnoire din partea dezvoltatorilor.

Este obișnuit să vedem un climat de neîncredere între dezvoltatori și managementul acestora; dezvoltatorii sunt supuși datoriei tehnice, în timp ce managerilor le este greu să evalueze impactul acestei datorii tehnice asupra organizației.
Aceste condiții transformă mediul într-o oală cu apă clocotită; situația se înrăutățește, dar nu știm ce să facem, așa că nu mai facem niciun efort.

Observând evoluția lumii dezvoltării de mai bine de zece ani, impactul datoriei tehnice asupra dezvoltatorilor mi-a devenit din ce în ce mai clar și sunt acum convins că acesta este un fenomen nou, care ar trebui luat foarte în serios la nivel strategic.

Desigur, fenomenul datoriei tehnice nu este nou, dar modul în care îl privim se schimbă. Datoria tehnică apare din ce în ce mai mult ca un factor care poate perturba ecosistemul IT în ansamblu și nu mai este doar dintr-o perspectivă pur tehnică. În opinia mea, acest lucru este strâns legat de două fenomene: proliferarea inovațiilor tehnologice și apariția unei noi generații de informaticieni.

Piața locurilor de muncă IT este strânsă, deoarece revoluția digitală conduce la o creștere semnificativă, în timp ce numărul dezvoltatorilor de pe piață este insuficient.
În acest context, tehnologiile de dezvoltare evoluează cu o viteză vertiginoasă și dezvoltatorii sunt deosebit de sensibili la fenomenele de caducitate a abilităților lor. Drept urmare, datoria tehnică este o folie pentru ei.