1
Definire il problema e i criteri di successo
La tua API di checkout (
POST /api/checkout) ha una latenza p99 di 1,8 secondi — gli utenti abbandonano i carrelli e il tuo obiettivo di SLA è 400 ms. Esistono diversi modi validi per risolvere il problema: caching, ottimizzazione delle query, elaborazione asincrona, pooling delle connessioni. Non sai quale funzionerà meglio finché non li provi, e provarli in sequenza significa aspettare giorni.Invece, chiedi a Devin di avviare 3 sessioni in parallelo, ognuna delle quali esplora una strategia diversa. Dopo che tutte e 3 hanno terminato, Devin confronta i risultati e applica la soluzione vincente — oppure combina le parti migliori di ognuna in una singola PR.Per iniziare, apri una nuova sessione Devin dalla homepage di Devin e descrivi l’attività batch.2
Scrivi un prompt che indirizzi ogni sessione verso una soluzione diversa
Il valore di eseguire 3 sessioni dipende dal fatto che ognuna esplori un approccio davvero diverso. Scrivi il tuo prompt in modo da incoraggiare la divergenza — suggerisci strategie specifiche e definisci cosa significa “migliore” così che i risultati siano direttamente confrontabili.Suggerimenti per un buon prompt multi-strategia:
- Definisci “migliore” con criteri ordinati. Elencare le dimensioni di confronto — latenza, tasso di errore, complessità, consistenza — impedisce a Devin di privilegiare soltanto la velocità pura.
- Suggerisci strategie specifiche. Opzioni come “caching, riscrittura delle query, elaborazione asincrona” spingono ciascuna sessione verso un percorso diverso.
- Includi un comando di benchmark. Ogni sessione ha bisogno di un modo riproducibile per misurare il proprio risultato —
npm run bench,k6 run load-test.jso un semplice loop curl. - Indica il codice. Un percorso di file come
src/routes/checkout.tsassicura che tutte e 3 le sessioni partano dallo stesso punto.
3
Confronta i risultati e seleziona il vincitore
Una volta che tutte e tre le sessioni sono state completate, Devin esamina il lavoro prodotto confrontandolo con i tuoi criteri — strategie utilizzate, metriche di benchmark, compromessi — e poi sceglie la soluzione migliore oppure sintetizza una soluzione combinata in un’unica PR finale (pull request finale).Ecco come si presenta questo confronto per il problema della latenza nel checkout:Puoi rivedere le singole PR di sessione prima che Devin crei quella combinata. Se preferisci chiaramente uno degli approcci, ti basta dirlo a Devin — “segui l’approccio della sessione 3, salta la combinazione.”
4
Quando far competere 3 strategie su un unico problema
Buon caso d’uso — esistono più approcci validi:
- Collo di bottiglia delle prestazioni in cui caching, ottimizzazione delle query e modifiche all’architettura potrebbero funzionare tutte
- Decisioni di architettura con tradeoff reali (estrazione da un monolite, riprogettazione della gestione dello stato)
- Scelta dell’algoritmo per un problema fortemente basato sui dati (diverse strategie di indicizzazione, ranking o approcci di ML)
- Correzioni di bug con causa principale chiara
- Aggiunta di un endpoint CRUD standard
- Aggiornamento di dipendenze o file di configurazione
bypass_approval su true nella richiesta di creazione della sessione per approvare automaticamente la creazione delle sessioni figlie.
