Meglio evitare la pressione. Se no, saperla gestire
Immaginiamo di avere un’esperienza extracorporea: ci osserviamo su un tavolo operatorio mentre un chirurgo esegue un intervento a cuore aperto su di noi. Quel chirurgo sta cercando di salvarci la vita, ma ha a disposizione un tempo limitato, quindi sta operando entro una scadenza, una vera e propria deadline.
Come vogliamo che si comporti quel medico? Vogliamo che sia calmo e composto? Vogliamo che dia ordini chiari e precisi al personale che lo supporta? Vogliamo che segua quanto gli dice la sua formazione e che aderisca alle sue discipline?
Oppure vogliamo che sudi e imprechi? Vogliamo che sbatta e lanci i suoi strumenti? Vogliamo che si lamenti con il management per aspettative irrealistiche e che si lamenti continuamente del tempo? In breve, vogliamo che si comporti come un professionista o come un tipico sviluppatore?
Lo sviluppatore professionista è calmo e risoluto anche sotto pressione. Man mano che la pressione aumenta, conta sulla sua formazione e aderisce alle sue discipline, sapendo che sono sempre il modo migliore per rispettare le scadenze e gli impegni che lo incalzano.
Nel 1988 lavoravo per Clear Communications. Era una startup che non è mai partita. Abbiamo bruciato il nostro primo blocco di finanziamenti e poi abbiamo dovuto chiederne un secondo e poi un terzo.
Leggi anche: Chi è Uncle Bob Martin, il paladino del Clean Code
La visione iniziale del prodotto sembrava buona, ma la sua architettura non sembrava mai riuscire a concretizzarsi. All’inizio il prodotto era sia software sia hardware. Poi è diventato solo software. La piattaforma software è cambiata da PC a SPARCstation. I clienti sono cambiati dalla fascia alta alla fascia bassa. Alla fine, anche l’intento originale del prodotto si è spostato, mentre l’azienda cercava di trovare qualcosa che generasse entrate. Nei quasi quattro anni che ho trascorso lì, non credo che l’azienda abbia visto un centesimo di entrate.
Inutile dire che noi sviluppatori eravamo sotto pressione. Ci sono state parecchie serate molto lunghe e weekend ancora più lunghi trascorsi in ufficio, al terminale. Le funzioni erano scritte in C ed erano lunghe 3.000 righe. C’erano sempre discussioni, con urla e insulti. C’erano intrighi e sotterfugi. C’erano pugni tirati sui muri, penne lanciate con rabbia contro lavagne bianche, caricature di colleghi fastidiosi impresse sui muri a matita e c’era una dotazione pressoché infinita di rabbia e stress.
Le scadenze erano dettate dagli eventi. Le funzionalità dovevano essere pronte per le fiere o le demo ai clienti. Qualsiasi cosa un cliente chiedesse, indipendentemente da quanto fosse sciocca, noi l’avremmo avuta pronta per la demo successiva. Il tempo era sempre troppo poco. Il lavoro era sempre in ritardo. I programmi erano sempre schiaccianti.
Guardarsi allo specchio
Se lavoravi 80 ore a settimana, eri un eroe. Se mettevi insieme fanghiglia funzionante per la demo di un cliente, eri un eroe. Se lo ripetevi abbastanza volte, potevi essere promosso. Se non lo facevi, potevi essere licenziato. Era una startup, era tutta una questione di sweat equity. E nel 1988, con quasi vent’anni di esperienza alle spalle, ci ho creduto.
Ero il responsabile dello sviluppo, che diceva ai programmatori che lavoravano per me che dovevano lavorare di più e più velocemente. Ero uno dei tipi che lavoravano 80 ore, che scrivevano funzioni C da 3.000 righe alle 2 di notte, mentre i miei figli dormivano a casa senza di me. Ero io quello che lanciava le penne e urlava e che faceva licenziare chi non si dava una mossa. Era orribile. Ero orribile.
Poi arrivò il giorno in cui mia moglie mi costrinse a guardarmi allo specchio. Non mi piaceva quello che vedevo. Mi disse che non ero molto simpatico. E aveva ragione. Ma non mi è piaciuto, così uscii di casa furibondo e iniziai a camminare senza meta. Camminai e camminai per una mezzora, ribollendo di rabbia; poi cominciò a piovere.
Basta con lo stress
E qualcosa scattò nella mia testa. Iniziai a ridere. Risi della mia follia. Risi del mio stress. Risi dell’uomo allo specchio, il povero stupido che aveva reso la vita un inferno a sé stesso e agli altri in nome di… che cosa?
Quel giorno cambiò tutto. Smisi di fare orari folli. Smisi di adottare uno stile di vita ad alto stress. Smisi di lanciare penne e scrivere funzioni C da 3.000 righe. Decisi che avrei condotto la mia carriera svolgendola bene, non stupidamente.
Ho lasciato quel lavoro nel modo più professionale possibile e sono diventato un consulente. Da quel giorno non ho mai più chiamato un’altra persona capo.
Evitare le pressioni
Il modo migliore per restare calmi sotto pressione consiste nell’evitare le situazioni che causano pressione. Tale evitamento potrebbe non eliminare completamente le pressioni, ma può fare molto per minimizzare e accorciare i periodi di alta pressione.
Impegni
È importante evitare di impegnarsi in scadenze che non siamo sicuri di poter rispettare. L’azienda vorrà sempre strapparci questi impegni, perché vuole eliminare i rischi. Ciò che dobbiamo fare è assicurarci che i rischi siano quantificati e presentati all’azienda, così che possa gestirli in modo appropriato. Accettare impegni irrealistici ostacola questo obiettivo e fa un disservizio sia all’azienda sia a noi stessi.
A volte gli impegni vengono da altri presi per noi. A volte scopriamo che la nostra azienda ha fatto promesse ai clienti senza consultarci. Quando ciò accade, siamo tenuti per onore ad aiutare l’azienda a trovare un modo per rispettare tali impegni. Tuttavia, non siamo tenuti per onore ad accettare tali impegni.
Questo manuale insegna un atteggiamento per affrontare ogni aspetto di questo mestiere con orgoglio e rispetto per se stessi, per lavorare bene e in modo pulito, per comunicare e fare stime coerenti, per prendere le decisioni difficili con chiarezza e onestà.
La differenza non è da poco. Un vero professionista aiuterà sempre l’azienda a trovare un modo per raggiungere i suoi obiettivi. Ma non necessariamente accetterà gli impegni presi per lui dall’azienda. Alla fine, se noi non riusciamo a trovare un modo per mantenere le promesse fatte dall’azienda, allora chi ha fatto quelle promesse deve accettarne la responsabilità.
Facile dirlo. Ma quando la nostra ditta fallisce e il nostro stipendio è in ritardo a causa degli impegni mancati, è difficile non sentirne la pressione. Ma se ci siamo comportati in modo professionale, almeno potremo tenere la testa alta mentre cerchiamo un nuovo lavoro.
Rimanere puliti
Il modo per andare veloci e tenere sotto controllo le scadenze è restare puliti. I professionisti non cedono alla tentazione di creare melma pur di fare in fretta. I professionisti si rendono conto che le parole sporco e veloce non vanno d’accordo. Sporco significa sempre lento: brutto e cattivo.
Possiamo evitare le pressioni mantenendo il più possibile puliti i nostri sistemi, il nostro codice e il nostro design. Questo non significa che trascorreremo infinite ore a ripulire il codice. Significa semplicemente non tollerare la melma. Sappiamo che la melma ci rallenterà, facendoci mancare scadenze e venir meno a impegni. Quindi facciamo il miglior lavoro possibile e manteniamo il nostro output il più pulito possibile.
Disciplina di crisi
Sappiamo in che cosa crediamo osservandoci nel bel mezzo di una crisi. Se in una crisi seguiamo le nostre discipline, allora crediamo veramente in quelle discipline. Al contrario, se cambiamo il nostro comportamento in una crisi, allora non crediamo davvero nel nostro comportamento normale.
Se normalmente seguiamo la disciplina dello sviluppo TDD (Test Driven Development), ma poi la abbandoniamo nel corso di una crisi, allora non crediamo davvero che lo sviluppo TDD sia utile. Se manteniamo il nostro codice pulito in tempi normali ma creiamo melma nel corso di una crisi, allora non crediamo davvero che la melma ci rallenti. Se usiamo il pairing quando c’è una crisi, ma normalmente non usiamo il pairing, allora crediamo che lavorare in coppia sia più efficiente.
Scegliamo discipline che ci facciano sentire a nostro agio in caso di crisi. Poi seguiamole sempre. Seguire queste discipline è il modo migliore per evitare di finire in una crisi.
Non cambiamo il nostro comportamento quando arriva il momento critico. Se le nostre discipline sono il modo migliore per lavorare, allora dobbiamo seguirle anche nel culmine di una crisi.
Gestione delle pressioni
Prevenire, mitigare ed eliminare le pressioni è molto bello e buono, ma a volte le pressioni arrivano nonostante tutte le nostre migliori intenzioni e precauzioni. A volte il progetto richiede più tempo di quanto chiunque pensasse. A volte il progetto iniziale è semplicemente sbagliato e deve essere rielaborato. A volte perdiamo un membro prezioso del team o un cliente. A volte prendiamo un impegno che, semplicemente, non possiamo mantenere. Che fare?
Niente panico
Teniamo sotto controllo lo stress. Le notti insonni non ci aiuteranno a finire più velocemente. Anche stare seduti e agitarci non ci aiuterà. E la cosa peggiore che potremmo fare è andare di fretta! Resistiamo a tutti i costi a questa tentazione. La fretta ci spingerà solo più in profondità nella buca.
Piuttosto, rallentiamo. Riflettiamo sul problema. Tracciamo un percorso verso il miglior risultato possibile, e poi puntiamo verso quel risultato a un ritmo ragionevole e costante.
Comunicare
Facciamo sapere al nostro team e ai nostri superiori che siamo nei guai. Esponiamo loro i nostri piani migliori per uscire dai guai. Chiediamo il loro contributo e la loro guida. Evitiamo di fare brutte sorprese. Niente fa arrabbiare di più delle brutte sorprese. Le sorprese moltiplicano la pressione per dieci.
Affidiamoci alle nostre discipline
Quando le cose si mettono male, fidiamoci delle nostre discipline. Il motivo per cui seguiamo determinate discipline è per darci una guida nei momenti di forte pressione. Questi sono i momenti in cui prestare particolare attenzione a tutte le discipline. Non i momenti in cui metterle in discussione o abbandonarle.
Invece di guardarci intorno in preda al panico in cerca di qualcosa, qualsiasi cosa, che ci aiuti a fare più velocemente, impegnamoci di più a seguire le discipline che abbiamo scelto. Se abbiamo adottato lo sviluppo TDD, scriviamo ancora più test del solito. Se siamo appassionati del refactoring, facciamo ancora più refactoring. Se manteniamo piccole le nostre funzioni, allora teniamole ancora più piccole. L’unico modo per uscire da questa pressione consiste nell’affidarci a ciò che sappiamo già funzionare: le nostre discipline.
Cerchiamo un aiuto
Adottiamo il pairing, lavoriamo in coppia! Quando la situazione è critica, troviamo un collega disposto a programmare in pairing con noi. Finiremo prima e con meno difetti. Il nostro partner di pairing ci aiuterà a seguire le discipline e ci impedirà di farci prendere dal panico. Il partner individuerà le cose che a noi sfuggono, ci fornirà idee utili e ci aiuterà a recuperare quando perderemo la concentrazione.
Allo stesso modo, quando vediamo qualcuno sotto pressione, offriamoci di lavorare in pairing. Aiutiamolo a uscire dalla buca in cui si trova.
Conclusioni
Il trucco per gestire la pressione nel lavoro è evitarla quando possiamo e resisterle quando non possiamo. La evitiamo gestendo gli impegni, seguendo le nostre discipline e mantenendo sempre pulito il lavoro. Resistiamo restando calmi, comunicando, seguendo le nostre discipline e chiedendo aiuto.
Questo articolo richiama contenuti da Clean Coder.
Immagine originale di Shahadat Rahman su Unsplash.