Se guardo cosa faccio in una giornata di lavoro, scrivo meno codice di prima. Non lavoro meno, lavoro su altro. Ed è un cambiamento di cui si parla meno di altri.
L’AI sostituirà i programmatori?
Si dice spesso che l’AI sostituirà i programmatori. Per quello che vedo nel mio lavoro, è una mezza verità. L’AI può scrivere buona parte del codice, ma può sbagliare, e a volte l’errore si nasconde dentro un risultato che sembra corretto. Serve qualcuno che sappia valutare ciò che viene prodotto.
Per me è un passaggio simile a quello dall’assembly ai linguaggi ad alto livello. Allora si temeva di perdere il controllo, mentre gli sviluppatori hanno smesso di gestire istruzioni macchina e hanno iniziato a progettare sistemi più complessi. È solo un’analogia e non dice come andrà, ma descrive bene la direzione in cui sento muoversi il mio lavoro: meno scrittura, più progettazione, verifica e decisioni.
Dal mockup all’applicazione
Prendiamo un caso concreto: l’implementazione dei mockup. Tradurre un disegno in un’applicazione funzionante, fedele al design e corretta su tutti i dispositivi, richiede tempo e attenzione ai dettagli. Soprattutto nei casi più complessi, realizzare l’interfaccia desiderata significa trovare il giusto equilibrio tra fedeltà al progetto, integrazione nell’applicazione e manutenibilità.
Oggi passo all’AI il mockup e i requisiti e ottengo in poco tempo una prima versione dell’interfaccia. Il mio lavoro comincia da lì: verifico il risultato, lo integro nell’applicazione e intervengo dove serve. Questo mi permette di dedicare più attenzione alla qualità dell’implementazione e di avvicinarmi maggiormente al design richiesto dal cliente, anche nei casi più complessi.
Il valore del mio lavoro non sta nello scrivere ogni riga di codice. Sta nel capire cosa serve al cliente e nel saperlo descrivere con precisione.
Quando i requisiti cambiano
Il momento più critico che ricordo è arrivato in un progetto già avanzato. Il cliente ha cambiato in modo sostanziale i requisiti e una parte dell’applicazione andava riscritta, con la scadenza invariata. Succede spesso nei progetti che evolvono mentre vengono realizzati.
Una situazione così richiede valutazioni: cosa cambia nell’architettura, cosa succede alle funzionalità esistenti, quali test vanno rivisti, come si riflette sulla pianificazione. L’AI può accelerare la scrittura di alcune parti, e oggi molte modifiche si implementano più in fretta. Ma non risponde a quelle domande e non garantisce che un cambiamento non abbia conseguenze sui tempi. Quelle valutazioni restano a chi progetta.
Dove va il tempo
Il tempo che recupero sulle attività operative lo dedico all’architettura dell’applicazione e al confronto con il cliente, dove riesco a essere più propositivo. Ho imparato che il valore sta nel descrivere con precisione ciò che serve: se la richiesta all’AI è vaga, lo è anche il risultato. Per questo oggi dedico più attenzione alla definizione dei requisiti e alla documentazione, che aiutano a fornire all’AI il contesto necessario e a verificare meglio ciò che produce.
C’è anche un effetto personale. Lavorare con meno affanno significa, per me, meno ore extra sotto scadenza e più tempo per la vita privata. È un beneficio che sto sperimentando direttamente, anche se non può essere dato per scontato in ogni progetto.
Cosa conta per chi commissiona un software
Per un responsabile IT o un CTO la domanda non è se chi sviluppa usi l’AI. È cosa resta nelle mani di chi sviluppa. Generare codice è sempre più facile. Governare lo sviluppo richiede ancora competenza ed esperienza: capire i requisiti, progettare soluzioni coerenti, giudicare il codice che arriva, curare manutenibilità e qualità nel tempo. Il programmatore diventa, sempre di più, architetto del software.
Nel mio lavoro l’AI ha spostato il tempo dalla scrittura alla progettazione. In TC Consulting utilizziamo l’AI come supporto allo sviluppo, senza delegarle le decisioni che determinano la qualità del software. Progettazione, verifica e responsabilità tecnica restano centrali: è così che la velocità diventa valore per il cliente.