Molte persone hanno provato gli strumenti di intelligenza artificiale e ne sono rimaste impressionate. Capisco; Molte demo promettono magia, ma nella pratica i risultati potrebbero non essere all’altezza.
Ecco perché voglio scrivere questo basandomi sulle esperienze vissute, non come una previsione futuristica. Negli ultimi sei mesi ho dato priorità all’intelligenza artificiale nella mia organizzazione ingegneristica. Ho già condiviso in precedenza il modo in cui abbiamo creato il sistema, i flussi di lavoro, le metriche e i limiti alla base di questa trasformazione. Oggi voglio allontanarmi dalla meccanica e parlare di quello che faccio. imparato da questa esperienza – su dove va la nostra professione quando lo stesso sviluppo del software viene stravolto.
Prima di farlo, fornirò alcuni numeri per mostrare l’entità del cambiamento. Soggettivamente sentiamo che ci stiamo muovendo due volte più velocemente. Oggettivamente, ecco come migliora l’efficienza. All’inizio dell’anno il numero dei dipendenti del nostro team tecnico è aumentato da 36 a 30. Quindi ottieni un’efficienza di circa il 170% con un organico di circa l’80%, che corrisponde a ~ 2x soggettivo.
Ingrandendo l’argomento, ho selezionato alcuni dei nostri ingegneri senior che hanno iniziato l’anno con un processo di ingegneria del software più tradizionale e l’hanno terminato con un metodo incentrato sull’intelligenza artificiale. (I drop corrispondono ai giorni festivi e fuori sede):
Tieni presente che i nostri PR si basano sui biglietti JIRA e la copertura media di tali biglietti non è cambiata molto nel corso dell’anno, quindi è una rappresentazione quanto più valida i dati possono fornirci.
Qualitativamente, quando guardo al valore aziendale, vedo in realtà un aumento ancora maggiore. Uno dei motivi è che il nostro team di controllo qualità (QA) non è riuscito a tenere il passo con i nostri ingegneri come abbiamo iniziato l’anno scorso. In qualità di leader dell’azienda, non ero soddisfatto della qualità di alcune delle nostre prime versioni. Man mano che nel corso dell’anno abbiamo dotato i nostri flussi di lavoro di intelligenza artificiale per includere unità di creazione e test end-to-end, la nostra copertura è migliorata, il numero di errori è diminuito, gli utenti sono diventati fan e il valore aziendale degli sforzi di progettazione è aumentato in modo esponenziale.
Dal grande design alla sperimentazione rapida
Prima dell’intelligenza artificiale, passavamo settimane a perfezionare i flussi degli utenti prima di scrivere il codice. Aveva senso quando il cambiamento era costoso. Agile ha aiutato, ma anche in quel caso era troppo costoso testare più idee di prodotto.
Questo compromesso è scomparso quando abbiamo dato priorità all’intelligenza artificiale. costo tentativo crollato. Un’idea può passare dalla lavagna al prototipo funzionante in un giorno: dall’idea al documento sui requisiti del prodotto (PRD) generato dall’intelligenza artificiale, alle specifiche tecniche generate dall’intelligenza artificiale, all’implementazione basata sull’intelligenza artificiale.
Si è manifestato in alcune trasformazioni sorprendenti. Il nostro sito Web, che è al centro dei nostri acquisti e della domanda in entrata, è ora un sistema su scala di prodotto costituito da centinaia di componenti personalizzati, tutti progettati, sviluppati e gestiti in codice diretto dal nostro direttore creativo.
Invece di convalidare con diapositive o prototipi statici, ora verifichiamo con prodotti funzionanti. Testiamo le idee dal vivo, impariamo più velocemente e rilasciamo aggiornamenti importanti ogni due mesi; Questo avviene a un ritmo che non avrei potuto immaginare tre anni fa.
Ad esempio, Zen CLI è stato originariamente scritto in Kotlin ma in seguito abbiamo cambiato idea e lo abbiamo portato su TypeScript senza alcuna perdita di velocità di rilascio.
IOInvece di deridere le funzionalità, i nostri progettisti UX e project manager le codificano. Quando la stretta sui tempi di rilascio ha colpito tutti, sono entrati in azione e hanno risolto dozzine di piccoli dettagli con PR pronti per la produzione per aiutarci a fornire un ottimo prodotto. Ciò includeva una modifica del layout dell’interfaccia utente durante la notte.
Dalla codifica alla verifica
Il cambiamento successivo si è verificato nel luogo che meno mi aspettavo: la verifica.
In un’organizzazione tradizionale, la maggior parte delle persone scrive codice e un gruppo più piccolo lo testa. Ma quando l’intelligenza artificiale costituisce la maggior parte dell’applicazione, il punto di leva si sposta. Il vero valore sta nel definire cosa significa “buono”, cioè nel rendere chiara la rettitudine.
Noi Supporta più di 70 linguaggi di programmazione e innumerevoli integrazioni. I nostri ingegneri del controllo qualità sono diventati architetti di sistema. Creano agenti AI che creano e mantengono test di accettazione direttamente dai requisiti. E questi agenti sono integrati in flussi di lavoro IA codificati che ci consentono di ottenere risultati ingegneristici prevedibili utilizzando un sistema.
Questo è ciò che significa realmente “scorrere verso sinistra”. La convalida non è una funzione autonoma; È parte integrante del processo produttivo. Se l’agente non è in grado di verificare il proprio funzionamento, non è possibile fidarsi di generare codice di produzione. Per i professionisti del QA, questo è un momento di reinvenzione in cui, con lo sviluppo delle giuste competenze, il loro lavoro diventa un fattore abilitante e acceleratore fondamentale nell’adozione dell’intelligenza artificiale.
I product manager, i leader tecnici e gli ingegneri dei dati ora condividono questa responsabilità perché definire l’accuratezza è diventata una competenza interfunzionale, non un ruolo limitato al QA.
Dal diamante al doppio imbuto
Per decenni, lo sviluppo del software ha seguito uno schema a “diamante”: un piccolo team di prodotto è stato affidato a un grande team di ingegneri, quindi nuovamente assunto tramite il QA.
Oggi questa geometria è invertita. Le persone si impegnano più profondamente all’inizio, definendo le intenzioni, esplorando le opzioni e convalidando nuovamente i risultati alla fine. La parte centrale, dove lavora l’intelligenza artificiale, è più veloce e più stretta.
Questo non è solo un nuovo flusso di lavoro; Questa è una trasformazione strutturale.
Il modello somiglia più ad una torre di controllo che ad una catena di montaggio. Gli esseri umani stabiliscono la direzione e i vincoli, l’intelligenza artificiale viene eseguita rapidamente e gli esseri umani fanno un passo indietro per convalidare i risultati prima che le decisioni passino alla produzione.
Ingegneria a un livello di astrazione più elevato
Ogni passo importante nel software ha aumentato il nostro livello di astrazione, dalle schede perforate ai linguaggi di programmazione di alto livello, dall’hardware al cloud. L’intelligenza artificiale è il prossimo passo. I nostri ingegneri ora lavorano su un meta-livello: orchestrano i flussi di lavoro dell’intelligenza artificiale, impostano istruzioni e competenze efficaci e definiscono i guardrail. Produce macchine; le persone decidono Che cosa E Da dove.
I team ora decidono regolarmente quando è sicuro combinare l’output dell’intelligenza artificiale senza revisione, quanto strettamente limitare l’autonomia degli agenti nei sistemi di produzione e quali segnali indicano effettivamente l’accuratezza su larga scala: decisioni che in precedenza non erano disponibili.
Questo è il paradosso dell’ingegneria basata sull’intelligenza artificiale; È meno come programmare e più come pensare. Benvenuti nella nuova era dell’intelligenza umana alimentata dall’intelligenza artificiale.
Andrew Filev è il fondatore e CEO di Zencoder















