Close

Gestione degli imprevisti per i team high velocity

Una guida per i manager per migliorare il servizio su chiamata

Proprio come i pronto soccorso richiedono programmazioni su chiamata affinché i medici possano gestire le emergenze sanitarie, i team DevOps ne hanno bisogno per rispondere in modo efficiente ai problemi di software e sistema che influiscono su prestazioni, distribuzione e disponibilità.

Ma sviluppare una pratica su chiamata è più facile a dirsi che a farsi. Essere reperibili può essere un'esperienza scoraggiante e dirompente per i dipendenti. Trovare il giusto equilibrio tra copertura, scalabilità e qualità della vita per il team è una sfida continua.

Man mano che le migliori pratiche cambiano e le aziende crescono, i team più agili e ad alta velocità stanno implementando nuovi approcci che si stanno rivelando azzeccati.

You Build It, You Maintain It

Fino all'ultimo decennio, rispondere agli imprevisti informatici era il compito principale dei team delle operazioni. Le organizzazioni in genere implementavano una struttura di team a più livelli (ad es. Livello 1, Livello 2, Livello 3, con livelli di abilità e livelli retributivi più elevati ai vertici della piramide).

L'obiettivo di adottare questa struttura era ridurre i costi operativi. Di solito, il Livello 1 era composto da dipendenti di livello base. Se il Livello 1 non riusciva a risolvere un ticket, lo passava al Livello 2, composto da persone più anziane (e quindi più costose per l'azienda). E questo processo andava avanti fino alla risoluzione del ticket.

Ma con l'aumento dei servizi sempre attivi, sono aumentate anche le interdipendenze tra i sistemi e le aspettative dei clienti in termini di operatività. Oggigiorno, una risposta lenta può costare all'azienda di più, in termini di reputazione, soddisfazione del cliente e perdita di entrate, che coinvolgere gli sviluppatori di livello senior negli imprevisti in una fase precoce.

Il risultato di questo panorama tecnologico in evoluzione è che la struttura dei team di risposta aveva la necessità di cambiare: inserendo il movimento DevOps e il concetto di "You Built It, You Maintain It".

L'idea qui è semplice: lo sviluppatore che ha più familiarità con il codice è la persona migliore per risolvere problemi correlati nel più breve tempo possibile. Grazie a DevOps, questa logica è il motivo per cui ora è normale che gli sviluppatori siano reperibili, garantendo il corretto funzionamento del codice e riducendo l'MTTA e il MTTR degli imprevisti.

L'ulteriore vantaggio di questo approccio è rappresentato dall'esecuzione di test più rigorosi prima della distribuzione. Ora che lo sviluppatore responsabile del codice può ricevere avvisi durante le ore non lavorative, si respira un maggiore senso di proprietà, un ulteriore incentivo a controllare e ricontrollare il codice. Il risultato, che sempre più aziende stanno riscontrando, sono sistemi più affidabili e resilienti.

Sviluppa un pratica su chiamata che i team non odieranno

Il servizio su chiamata ha una brutta reputazione, e a volte per una buona ragione. I programmi su chiamata non bilanciati possono avere un effetto negativo sull'equilibrio tra lavoro e vita privata, sulla salute e sul sonno. I dipendenti che hanno avuto brutte esperienze su chiamata o che non hanno avuto alcuna esperienza su chiamata potrebbero pensare che la loro vita sociale e il loro equilibrio tra lavoro e vita privata svaniscano davanti ai loro occhi.

Ma la verità è che il servizio su chiamata non deve essere una marcia cupa verso una qualità della vita inferiore. Bilanciando le mansioni su chiamata, tenendo conto delle preferenze del team e implementando sistemi solidi per prevenire e ridurre gli imprevisti e gli avvisi su chiamata laddove possibile, puoi creare una pratica che riduca al minimo il carico e lo distribuisca tra i tuoi team.

Per avere successo in questo campo, la dirigenza deve essere trasparente con i team fin dall'inizio, fornire un'ampia formazione, stabilire aspettative eque per le mansioni su chiamata e di sviluppo, sviluppare processi solidi e verificare e apportare costantemente miglioramenti avvalendosi del contributo e del consenso dei team stessi.

Agisci in maniera trasparente con i tuoi team

La trasparenza è la chiave per una comunicazione di successo. Chiarire le aspettative sulla disponibilità è fondamentale quando si implementa un sistema su chiamata o si modifica un sistema su chiamata esistente. Assicurati di riflettere bene e di rispondere con chiarezza alle domande più comuni dei dipendenti come:

  • Gli ingegneri saranno reperibili durante la notte?
  • In caso di reperibilità durante la notte, sarà possibile lavorare da casa il giorno successivo? Un dipendente reperibile può iniziare a lavorare più tardi il giorno successivo se ha bisogno di recuperare qualche ora di sonno?
  • Gli sviluppatori sono responsabili del lavoro di sviluppo durante il servizio su chiamata?
  • Quante volte al mese sarà reperibile uno sviluppatore? Qual è il numero massimo di volte in cui una singola persona sarà reperibile?
  • Come intendi compensare i dipendenti reperibili?

Fornisci una formazione adeguata

Le migliori pratiche per la formazione dei team su chiamata includono:

  • Sviluppare un programma di formazione che affronti sia i processi che i problemi più comuni
  • Fornire runbook aggiornati
  • Affiancare i nuovi dipendenti a tecnici su chiamata esperti
  • Offrire ai dipendenti l'accesso ai report sugli imprevisti passati in modo che possano vedere come sono stati risolti con successo imprevisti passati simili a quello con cui hanno a che fare

È un'ottima idea anche avere più canali di escalation. La migliore pratica tipica è avere tecnici junior nella rotazione su chiamata principale e programmare tecnici senior come rotazione di riserva o secondaria. Questo aiuta i giovani tecnici a sviluppare le competenze su chiamata richieste evitando il panico quando si trovano davanti a un ticket che va oltre le loro competenze.

Mantieni separate le attività su chiamata e quelle di sviluppo

Doversi occupare di mansioni di sviluppo durante il servizio su chiamata di solito comporta numerosi cambi di contesto e interruzioni, soprattutto per le aziende con imprevisti e richieste di intervento su chiamata frequenti.

Tutto ciò di solito significa porta a una minore efficienza di sviluppo e a un maggiore stress per i tecnici reperibili e può essere causa di burnout, stress da avvisi e insoddisfazione sul lavoro. Può anche avere un effetto negativo sugli sprint di sviluppo, poiché è difficile stimare quanto una persona reperibile possa contribuire a un determinato sprint.

Ecco perché, come buona prassi, consigliamo di tenere separate le mansioni su chiamata e quelle di sviluppo. Quando i dipendenti su chiamata hanno tempo libero, possono occuparsi di migliorare la documentazione e l'automazione relative al servizio su chiamata ottimizzando in ultima analisi la sostenibilità dei sistemi e dei servizi.

Perfeziona il tuo processo su chiamata

Una soluzione su chiamata efficace può esistere solo se viene migliorata costantemente dall'ottimizzazione di processi e sistemi. Personalizza le on-call schedule, le routing rule e le escalation policy con una soluzione di gestione degli imprevisti come Jira Service Management per gestire gli avvisi con grande efficienza. Per raggiungere questi obiettivi, consigliamo:

  • Valutare la priorità e l'urgenza degli avvisi e configurare i sistemi di conseguenza. Gli avvisi caratterizzati da una bassa urgenza possono attendere fino al mattino, permettendo ai dipendenti su chiamata di dormire un po', cosa di cui c'è sempre tanto bisogno.
  • Ridurre i falsi positivi classificando gli avvisi in base a fattori quali la causa principale, il sistema di origine, il messaggio, le soglie e via dicendo, aiuta a differenziare gli avvisi utilizzabili dagli altri.
  • Deduplicare gli avvisi correlati per evitare lo stressa da avvisi.
  • Progettare avvisi dettagliati che descrivano chiaramente un problema e consentano ai tecnici reperibili di prendere decisioni efficaci e applicare le conoscenze registrate nei runbook.
  • Fornire report di avvisi e metriche ai team di su chiamata in modo da permettere loro di identificare e migliorare le aree deboli dei sistemi. (In altre parole: non lasciare che i team su chiamata restino impantanati negli stessi problemi più e più volte.)

Rivedi i report su chiamata e regolali se necessario

Per assicurarsi che tutto proceda correttamente ed evitare il burnout dei dipendenti, i dirigenti dovrebbero esaminare i report relativi al servizio su chiamata per capire:

  • Con quale frequenza ogni membro del team viene chiamato o svegliato
  • Per quanto tempo ogni membro del team è reperibile
  • La distribuzione oraria e giornaliera dei servizi su chiamata per ogni persona
  • Come modificare gli orari secondo necessità per distribuire equamente il lavoro.

Ascolta i tuoi dipendenti

La dirigenza dovrebbe organizzare riunioni regolari a tutto campo con i tecnici reperibili per discutere di problemi, lamentele e aree di debolezza, quindi agire per risolverli.

I sistemi, gli strumenti, i processi, le persone, la documentazione e la formazione sul servizio su chiamata non sono elementi statici che puoi impostare e dimenticare. Man mano che l'azienda cresce, i team imparano e cambiano e gli imprevisti si evolvono nel tempo, la dirigenza dovrebbe rivalutare e migliorare costantemente i propri programmi su chiamata.

Le persone più preparate per dirti cosa funziona e cosa non funziona sono i tecnici su chiamata. Ascoltali. Implementa le modifiche. E, soprattutto, assicurati che la dirigenza non sia l'unica parte a prendere le decisioni quando si tratta dell'organizzazione e del protocollo del servizio su chiamata. Più consenti ai team di migliorare i propri processi e le proprie pratiche, più si faranno carico del servizio su chiamata.

Sviluppa una cultura su chiamata amichevole

I tecnici reperibili hanno un'enorme responsabilità per il successo delle aziende. Quindi non sorprende che lo stress e la tensione siano problemi comuni, specialmente in caso di ticket importanti con cause sconosciute.

La cultura del servizio su chiamata stabilita dai tecnici su chiamata anziani e dai team di gestione definisce il modo in cui le persone affrontano lo stress e la tensione e come si sentono quando sono reperibili.

Sia per il bene dei tecnici su chiamata che per la cultura su chiamata dell'azienda, i team di gestione dovrebbero impegnarsi a sviluppare una cultura del servizio su chiamata amichevole e chiarire che l'obiettivo dovrebbe sempre essere quello di individuare i problemi, i rischi e le debolezze nei sistemi e risolverli.

In Atlassian, questo significa non solo migliorare costantemente i nostri sistemi su chiamata, ma anche condurre analisi retrospettive senza biasimo, concentrandosi sul miglioramento, e non sul trovare qualcuno a cui attribuire la colpa.

Scopri Jira Service Management, una soluzione che supporta una cultura positiva del modello su chiamata, e crea un sistema con funzionalità di comunicazione avanzate, avvisi centralizzati, automazione flessibile e report avanzati per ottimizzare la risposta agli imprevisti.