Fare un piano
Dopo alcune riflessioni, abbiamo deciso di passare a una metodologia collaudata per i team di ingegneri: abbiamo deciso che volevamo diventare più Agile.
Per affrontare questa nuova sfida, volevamo mettere insieme un gruppo che rappresentasse e sfruttasse la conoscenza dell'intera nostra organizzazione di prodotto e ingegneria, quindi abbiamo creato un comitato con otto membri che rappresentano la gestione del prodotto, la progettazione e l'ingegneria. Abbiamo incluso sia manager che singoli contributori, nonché persone con diversi livelli di background, anzianità ed esperienza Agile.
Questo Comitato Agile, come lo abbiamo soprannominato, ha affrontato la situazione tenendo ben presenti alcuni principi chiave:
- Volevamo utilizzare soluzioni collaudate ove possibile, sia per metodologie che per software. Ci vuole un grande sforzo per essere unici e volevamo essere unici solo nelle aree necessarie e strategiche. Volevamo anche che le persone fossero in grado di seguire le best practice di Google sulla gestione del proprio lavoro o, meglio ancora, che le persone si unissero a Braze già sapendo principalmente come farlo.
- Volevamo che i team di ingegneria dei prodotti di Braze fossero ampiamente coerenti nel modo in cui operano, perché essere in grado di parlare la stessa lingua è prezioso.
- Non volevamo fare nulla in modo dogmatico, o senza pensarci. Scegliere un metodo e poi seguire il libro non era abbastanza buono; per noi era importante che il buon senso e l'iterazione ponderata governassero la giornata.
Forti di queste linee guida, abbiamo deciso di utilizzare Scrum, un framework Agile che si è dimostrato efficace per molte organizzazioni. È ampiamente noto, è scalabile ed è la scelta predefinita sicura quando stai cercando di implementare un processo Agile.
Successivamente, abbiamo dovuto affrontare due decisioni principali: (1) quali strumenti dovremmo utilizzare per supportare il nostro nuovo processo e (2) come implementare le modifiche al nostro processo. Abbiamo parlato, valutato e demo di diversi software e, alla fine, Jira di Atlassian si è rivelata la scelta giusta per noi. È una soluzione ben collaudata, diverse persone del nostro team avevano già esperienza nell'utilizzo e altri team all'interno di Braze la stavano già utilizzando, aprendo un'opportunità per una migliore collaborazione tra i team perché lavoreremo tutti all'interno di un sistema.
Quando si è trattato di selezionare un piano di implementazione per Agile, abbiamo dovuto prendere alcune decisioni chiave. Innanzitutto, come alleniamo/abilitiamo la squadra? Potremmo assumere un allenatore Agile, avere persone con esperienza nella squadra che si occupano di addestrare gli altri o chiedere aiuto a consulenti. In secondo luogo, dovremmo fare in modo che i team all'interno dell'ingegneria che abbiano avuto una certa esperienza con Agile attendano la formazione prima di implementarla?
Alla fine, abbiamo deciso di consentire ai team che avevano familiarità con Jira e Scrum di iniziare nella misura in cui si sentivano in grado e abbiamo assunto un consulente per aiutare con la transizione a livello di organizzazione. Non ci interessava che le persone della nostra squadra o un giocatore indipendente fossero i principali responsabili dell'allenamento dei membri del team durante la transizione perché:
- Non volevamo che nessun singolo team possedesse il modo in cui facciamo Agile e sentivamo che la formazione sarebbe stata accolta meglio e i suggerimenti sarebbero stati più inclusivi se provenissero da una terza parte
- Abbiamo pensato che un'attività di consulenza sarebbe stata più stabile e più affidabile di un coach Agile individuale
- Volevamo avere una formazione di base per l'intera organizzazione ingegneristica e iniziare senza fare supposizioni sulle conoscenze che i singoli membri dell'organizzazione avevano su Agile
- Infine, volevamo che gli allenatori se ne andassero ad un certo punto, per chiarire che tutti nella nostra organizzazione erano responsabili del mantenimento del processo in corso