La storia di "AI Matching" (Parte 2 - Il Processo)

La storia di "AI Matching" (Parte 2 - Il Processo)

Benvenuti alla seconda puntata del nostro viaggio all'interno di AI Matching, la nostra piattaforma interna per la gestione e lo staffing delle risorse.

Nella [Prima Parte](articolo_ai_part1_prodotto.md) abbiamo visto come l'Intelligenza Artificiale sia stata integrata nel prodotto per automatizzare ricerche complesse, fare lo scraping di opportunità commerciali ed elaborare profili professionali.

Ma come è stato costruito tutto questo? In questo secondo articolo vedremo il dietro le quinte: come l'AI stessa ci ha aiutato a scrivere, testare e validare il software, rivoluzionando la nostra Developer Experience (DevEx) quotidiana.

L'AI che aiuta a scrivere l'AI (La Developer Experience)

Sviluppare un'applicazione complessa e multitenant richiede molto tempo e attenzione, soprattutto in termini di sicurezza e robustezza del codice. La vera svolta è stata l'introduzione di assistenti AI per lo sviluppo in grado di agire come veri e propri "compagni di programmazione".

Per questo progetto abbiamo adottato un workflow di sviluppo guidato dall'AI estremamente rigoroso, definito ed eseguito in modo automatizzato (tramite il file `.gemini-workflow.yaml` del repository):

1.00

1. Pianificazione condivisa (Implementation Plan)

Prima di scrivere anche una sola riga di codice, lo sviluppatore e l'assistente AI analizzano la codebase corrente. L'AI propone un piano dettagliato (un Implementation Plan strutturato come artifact) che definisce:

  • L'approccio tecnico e le modifiche ai file.
  • I test unitari ed E2E da creare o aggiornare.
  • Gli aspetti legati alla sicurezza.

Lo sviluppatore valida il piano prima di far partire la scrittura del codice, garantendo allineamento totale fin dall'inizio.

2. Generazione di codice sicura e assistita

L'assistente ci aiuta a scrivere codice TypeScript Vanilla per il frontend e FastAPI Python per il backend, rispettando pattern puliti (Domain-Driven Service Layer) ed evitando rischi frequenti come l'hardcoding di credenziali, chiavi API o l'uso di pattern vulnerabili a SQL Injection o XSS.

3. Security Scan e Test Automatici integrati

Il workflow non si ferma alla scrittura del codice. L'assistente lancia in modo autonomo e proattivo una suite di scansione locale prima di ogni push:

  • Gitleaks: per intercettare l'esposizione accidentale di chiavi API o password.
  • Semgrep: per l'analisi statica di sicurezza (SAST), assicurando il rispetto delle regole di sviluppo sicuro.
  • Trivy: per scansionare le immagini Docker alla ricerca di vulnerabilità nel sistema operativo (es. CVE).
  • Test Suite (Vitest, Pytest, Playwright): l'AI esegue tutti i test di backend, frontend ed E2E per accertarsi che le modifiche non abbiano introdotto regressioni.

4. Gestione sicura delle modifiche (PR)

Solo dopo che tutti i test e gli scan di sicurezza hanno dato esito positivo, l'AI prepara la Pull Request sul repository, documentando in modo dettagliato le modifiche e i test superati. Questo riduce drasticamente i tempi di review per i colleghi e aumenta la fiducia nel codice che va in produzione.

1.00

Conclusioni: Cosa abbiamo imparato?

L'utilizzo di strumenti basati su AI ci ha permesso di:

  • 🚀 Ridurre i tempi di sviluppo di nuove funzionalità del 30-40%, delegando all'assistente la stesura di test unitari, il refactoring ripetitivo e la configurazione dei sistemi di test.
  • 🛡️ Aumentare la sicurezza del software: le scansioni automatiche forzate nel workflow impediscono a monte l'introduzione di bug critici.
  • 💡 Lavorare meglio: concentrandoci sulla logica di business e lasciando che l'AI gestisca l'automazione dei test e del boilerplate di configurazione.

E tu? Come puoi iniziare?

Se non hai ancora provato a usare i tool di Google Workspace o Gemini nella tua quotidianità lavorativa, prova a partire da compiti semplici:

  • Chiedi a Gemini di analizzare ed estrarre tabelle da lunghi report di progetto.
  • Usa l'AI per generare bozze di email o documentazione tecnica partendo da appunti disordinati.
  • Se scrivi codice, sperimenta l'integrazione di assistenti AI per la scrittura di test unitari o per spiegarti parti di codice legacy complesse.

Vuoi saperne di più o vedere una demo di AI Matching? Contattaci sul canale del nostro Sircle!