Come posso convincere gli sviluppatori del mio team ad abbracciare "Lo costruisci, lo esegui"? Con ciò, ho in mente questa citazione di Werner Vogels :
Assegnare agli sviluppatori responsabilità operative ha notevolmente migliorato la qualità dei servizi, sia dal punto di vista del cliente che dal punto di vista tecnologico. Il modello tradizionale è che porti il tuo software al muro che separa lo sviluppo e le operazioni, lo butti e poi lo dimentichi. Non su Amazon. Lo costruisci, lo esegui. Questo mette gli sviluppatori in contatto con le operazioni quotidiane del loro software. Li mette inoltre in contatto quotidiano con il cliente. Questo circuito di feedback dei clienti è essenziale per migliorare la qualità del servizio.
Sto pensando specificamente a un insieme di sviluppatori che:
- Sono stati assunti in un ruolo di sviluppatore, con poca / nessuna menzione di attività relative alle operazioni.
- Tradizionalmente hanno "lanciato il codice oltre il muro" per un team operativo.
- Tradizionalmente hanno un programma di lavoro 9-5 e sono attivamente ostili all'idea di "dovere cercapersone", partecipando al ripristino di emergenza, scrivendo post mortem, ecc., Specialmente al di fuori del normale orario lavorativo. (Nota: ho in mente solo interruzioni molto rare per questo; non sto proponendo di aggiungere il supporto clienti post-orario al carico di lavoro di questo team.)
- Al momento non sono responsabili della scrittura / supporto del monitoraggio o degli avvisi sulle loro applicazioni.
Supponiamo che ci sia un team che sta rapidamente sviluppando nuovi micro-servizi cloud con un profilo che sta diventando tale che il trasferimento di questi servizi a un team operativo non è ottimale perché non riescono a tenere il passo per quanto riguarda l'acquisizione di una profonda conoscenza di i servizi necessari per gestirli e monitorarli efficacemente. "Lo costruisci, lo esegui" funzionerebbe meglio per questo team perché le attività potevano essere delegate a ciascun membro del team responsabile. Quindi questo team inizierà a prendere parte alla progettazione dell'infrastruttura, al monitoraggio / allerta degli strumenti per i servizi e (molto raramente) alla risposta agli eventi di interruzione.
Sono particolarmente interessato alle metodologie, supportate da esempi del mondo reale. Come è stato implementato con successo in altri luoghi di lavoro e se ci sono dei passaggi canonici da seguire durante l'implementazione? Qualsiasi collegamento a scritture in grado di supportare le risposte sarebbe molto utile.