Come lavoriamo

La metà utile di qualsiasi pagina sul processo è quella che parla di quando va male.

Ogni fornitore descrive lo stesso percorso ideale — discovery, sprint, demo, passaggio di consegne — e la descrizione non porta alcuna informazione perché nessuno è in disaccordo. Quello che distingue i fornitori è ciò che succede nella settimana in cui la stima si rivela bassa, il requisito cambia dopo che il prezzo è stato fissato, o l’errore è nostro.

Prima il ritmo, perché è breve. Poi le quattro situazioni che decidono davvero se un incarico finisce bene.

Il ritmo

Quattro cicli, ognuno con qualcosa che potete verificare

Non una metodologia con un nome. Quattro cadenze annidate, ognuna delle quali produce un artefatto e non un aggiornamento di stato — la differenza è che un artefatto può essere sbagliato in un modo che potete vedere.

Le quattro cadenze di un incarico e ciò che ognuna produce Quattro cicli annidati. Il giorno produce decisioni registrate nel repository accanto al codice. Le due settimane producono una dimostrazione funzionante e le decisioni sul perimetro che ne derivano. Il mese produce un certificato firmato per il lavoro svolto, al quale segue la fattura. La fase produce software funzionante in produzione e un passaggio di consegne provato, dopo il quale fermarsi costa un periodo di preavviso e nient’altro. OGNI CICLO PRODUCE QUALCOSA CHE PUÒ ESSERE SBAGLIATO IN MODO VISIBILE IL GIORNO Una decisione, annotata Nel repository, accanto al codice LA QUINDICINA Qualcosa che gira Una dimostrazione, non un report IL MESE Un certificato firmato La fattura lo segue, non lo precede mai LA FASE Software in produzione E un passaggio di consegne provato, non sperato Fermarsi a qualsiasi confine di fase dovrebbe costare un periodo di preavviso e nient’altro. È la prova per cui esiste tutto questo ritmo. Un fornitore la cui unità minima di impegno è il progetto intero ha organizzato le cose perché andarsene costi caro. È una scelta, e non è stata fatta per voi. Se passano due settimane senza nulla che possiate aprire e usare, ditelo. È il primo segnale onesto che qualcosa non va, e di solito è quello giusto.
La quindicina è il ciclo che i clienti dovrebbero presidiare con più severità. Una dimostrazione può essere deludente, e una dimostrazione deludente alla seconda settimana vale più di quattro rapporti di stato incoraggianti.

La parte che porta informazione

Quattro situazioni, e cosa facciamo davvero

01 · La stima era troppo bassa

Dentro il perimetro concordato è un nostro problema e lo assorbiamo — questo è ciò che significa un prezzo fisso, e un fornitore che lo riapre non ve ne ha venduto uno. Ve lo diciamo nella settimana in cui lo scopriamo, perché uno sforamento che stiamo assorbendo in silenzio cambia comunque ciò che consiglieremmo per la fase successiva, e quel consiglio vale per voi più della nostra dignità.

02 · Il requisito è cambiato

Se sta dentro la fase, entra e qualcosa di comparabile esce — e siete voi a scegliere cosa, nella revisione quindicinale. Se non ci sta, viene preventivato come delta e decidete voi se entra in questa fase o nella successiva. Niente viene accettato in silenzio e tirato fuori più tardi come motivo di un ritardo.

03 · Non vi fate più sentire

Le decisioni non arrivano più, la revisione viene annullata due volte, nessuno risponde alla domanda che blocca il lavoro. Andiamo avanti per circa due settimane su ipotesi documentate, poi ci fermiamo e lo diciamo per iscritto, invece di continuare a costruire su supposizioni e fatturarvi il risultato.

04 · L’errore è stato nostro

Diciamo quale decisione era sbagliata, quanto è costata e cosa stiamo facendo al suo posto — nella revisione, prima che lo scopriate voi. Non vi facciamo pagare per correggere un difetto nostro. L’unica cosa che non faremo è spiegarlo come un fraintendimento dei vostri requisiti quando non lo è stato.

05 · E quella che non è un fallimento

La discovery finisce con "non costruitelo". Succede, il compenso è lo stesso, ed è il risultato meno costoso che possiamo produrre. Una revisione che non può arrivare a quella conclusione è una telefonata commerciale con un documento alla fine.

06 · Il disaccordo che accogliamo

Pensate che l’architettura sia sbagliata. Ditelo presto e la discuteremo davanti alla lavagna — e se perdiamo, la costruiamo come dite voi e mettiamo per iscritto che non eravamo d’accordo, così il verbale è onesto in entrambi i casi.

Dalla vostra parte

Cosa ci serve da voi, dichiarato in ore

I fornitori sono vaghi su questo punto perché la risposta onesta suona come una pretesa. È una pretesa piccola e senza di essa il progetto fallisce:

  • Qualcuno raggiungibile nella maggior parte dei giorni. Non a tempo pieno — disponibile. Le domande che aspettano tre giorni per una risposta diventano ipotesi, e le ipotesi diventano lavoro da rifare.
  • Due ore ogni due settimane per la revisione. Con la persona che può dire sì. Una revisione a cui partecipano persone che poi devono chiedere a qualcun altro è una presentazione, non una revisione.
  • Un decisore designato. È la differenza più grande fra un progetto che va alla velocità dell’ingegneria e uno che va alla velocità del calendario delle riunioni. Nessuna quantità di competenza tecnica compensa la sua assenza.
  • Qualcuno che ci sarà ancora dopo. Designato all’inizio, affiancato dalla prima settimana, non trovato nelle ultime due settimane.

Dichiarato una volta, collegato da ogni parte

Gli impegni, e dove ciascuno è scritto per esteso

Ognuno di questi è definito in un unico punto di questo sito. Ripetere un impegno in quattro pagine è il modo in cui si trasforma silenziosamente in quattro impegni diversi.

Chi lavora sull’incarico

I ruoli, le dimensioni che abbiamo effettivamente gestito — due, sei, dieci, undici — e quando ciascun ruolo non serve — il modello di team, con i numeri reali

Cosa significa un passaggio di consegne concluso

Cinque cose che un estraneo deve poter fare, nessuna delle quali richiede una chiamata a noi — il test del passaggio di consegne

Il contratto, quando mettiamo a disposizione ingegneri

Sostituzione, esclusività, la clausola che vi permette di assumerli, e di chi è il codice — quattro clausole, riportate per esteso

Perché nulla di tutto questo è somministrazione di manodopera

La distinzione di legge fra un contratto di appalto di servizi e la somministrazione di manodopera, e cosa costa a entrambe le parti oltrepassarla — chi dirige cosa

Domande

Quelle che vale la pena porre a qualsiasi fornitore

Cosa succede quando la vostra stima si rivela sbagliata?

Ve lo diciamo nella settimana in cui lo scopriamo, non nella settimana in cui la fase era in scadenza. Una fase è a prezzo fisso, quindi una sottostima che resta dentro il perimetro concordato è un nostro problema e lo assorbiamo — questo è ciò che significa fissare un prezzo, e un fornitore che lo rinegozia non vi ha venduto un prezzo fisso. Quello che chiediamo è il diritto di dirlo ad alta voce, perché uno sforamento che stiamo assorbendo in silenzio cambia comunque ciò che consiglieremmo per la fase successiva, e quell’informazione dovete averla mentre è utile.

I nostri requisiti cambieranno. Come funziona contro un prezzo fisso?

Una modifica che sta dentro la fase entra e qualcosa di equivalente esce, e a deciderlo siete voi nella revisione quindicinale, non noi. Una modifica che non ci sta viene preventivata come delta e scegliete voi: aggiungerla a questa fase a quel prezzo, o metterla nella successiva. Quello che non facciamo è accettarla in silenzio e tirarla fuori più tardi come motivo di un ritardo. Le discussioni sul perimetro alla fine sono quasi sempre decisioni sul perimetro che nessuno ha messo a verbale a suo tempo.

Che cosa vi serve da noi, in ore?

Meno di quanto chiede la maggior parte dei fornitori e più di niente. Grosso modo: una persona disponibile per le domande nella maggior parte dei giorni, due ore ogni due settimane per la revisione e una persona designata che possa prendere una decisione senza convocare nessuno. L’ultima conta più delle altre. Un progetto in cui ogni decisione richiede una riunione va alla velocità del calendario delle riunioni, e nessuna quantità di ingegneria lo compensa.

Con chi parliamo, concretamente?

Con le persone che fanno il lavoro, non con un account manager che fa da tramite. In un incarico piccolo sono uno o due ingegneri; in uno più grande c’è un project manager il cui compito è il piano e il calendario, non tradurre fra voi e il team. Se vi capita di spiegare qualcosa di tecnico a qualcuno che non sa rispondere a domande tecniche, è un nostro fallimento e vale la pena dirlo.

E se volessimo fermarci?

Le fasi sono l’unità proprio perché fermarsi costi poco e sia semplice. Alla fine di qualsiasi fase avete software funzionante in produzione, il repository, una build che gira su una macchina pulita, le migrazioni, un runbook e i registri delle decisioni — e il passaggio di consegne viene provato a ogni confine di fase, invece di essere tentato una volta sola alla fine. Fermarsi dopo la seconda fase dovrebbe costarvi un periodo di preavviso e nient’altro.

Lavorate con il nostro processo o con il vostro?

Con il vostro, dove ne avete uno. La vostra strategia di branch, il vostro standard di revisione, la vostra definizione di completato, il vostro sistema di ticket. Abbiamo le nostre opinioni e le esponiamo una volta, e dopo di quello il sistema è il vostro e le regole sono le vostre. L’unica cosa su cui insistiamo è che le decisioni vengano scritte dove sta il codice, perché una decisione che vive solo in un thread di chat non sopravvive alla persona che l’ha presa.

Prossimo passo

Chiedeteci di un progetto andato male

È una domanda migliore di qualsiasi chiamata di referenza, e vi risponderemo. Un fornitore che non ha una storia del genere o non ha lavorato abbastanza a lungo o non ve la sta raccontando.