In produzione

Ingegnere IA che costruisce sistemi di agenti in produzione.

Ingegneria full-stack sotto — metto in produzione agenti da cui le persone dipendono ogni giorno: voce, supporto e piattaforme con contesto strutturato.

2,000+
conversazioni al giorno di picco
55–60%
dei contatti risolti end to end
~3%
di conversione su lead freddi, per voce Outbound completamente autonomo — nessun umano al telefono.

Lavori selezionati

01

Progetto di punta

Piattaforma di agenti con contesto strutturato per il wealth management

Mavericks.AI — gestori patrimoniali e consulenti finanziari

Problema

I consulenti perdono ore ogni settimana a redigere i resoconti degli incontri e a ricomporre il contesto del cliente, sparso tra note vocali WhatsApp, trascrizioni e feed finanziari.

Cosa ho costruito

Una piattaforma end to end che ingerisce dati non strutturati, esegue pipeline analitiche automatizzate e serve agenti con contesto strutturato per il supporto al consulente in tempo reale. Gli agenti integrati con il calendario entrano da soli nelle riunioni programmate tramite Recall.ai, registrano e attivano elaborazioni asincrone via webhook. Il nucleo ingegneristico: l'agente è collegato a tutte le rotte del backend attraverso un monorepo con generatore automatico di integrazioni, più un layer di strutturazione delle query al di sopra. Paginazione, sintesi e tool strutturati forniscono al modello input e output puliti. Non è un dump del sistema nel contesto — è una digestione strutturata e in tempo reale dei dati del sistema.

Come la piattaforma digerisce il contesto

// entra non strutturato, esce strutturato

  1. Fonti

    Note vocali WhatsApp

    Trascrizioni delle riunioni

    Feed finanziari

    sparso · non letto · senza etichetta

  2. Ingestione

    attivato dal calendario

    Gli agenti entrano da soli nella riunione programmata tramite Recall.ai e registrano.

    webhook → coda asincrona

    elaborazione fuori dal percorso della richiesta

  3. Layer strutturato

    monorepo

    generatore automatico di integrazioni

    tutte le rotte del backend

    • GET tool
    • GET tool
    • GET tool
    • POST tool

    generato, non collegato a mano

    layer di strutturazione delle query

    • paginazione
    • sintesi
    • tool strutturati

    input e output puliti per il modello

  4. Agenti nel prodotto

    • Analisi delle riunioni

      Gli agenti entrano da soli nella riunione programmata, la registrano e trasformano la trascrizione in insight sul cliente e azioni sul CRM.

    • Analisi delle conversazioni WhatsApp

      Note vocali e conversazioni con i clienti vengono ingerite e digerite in contesto strutturato, invece di restare sepolte nella cronologia della chat.

    • Supporto al consulente nel prodotto

      Gli agenti rispondono dentro la piattaforma con accesso strutturato e in tempo reale a ogni rotta del backend — query, paginazione e tool, non un dump di contesto.

    • Briefing sulla relazione

      Prima di ogni incontro, un briefing sul cliente e sulla relazione: cosa si è mosso, cosa è stato detto e cosa resta aperto dall’ultima interazione.

  5. Consulente

    3–4 insight e azioni CRM per riunione

    ~6–7 h di redazione risparmiati a settimana

    il contesto arriva digerito, non scaricato

Stack

LangGraph · LangChain · Python · FastAPI · TypeScript · Next.js · PostgreSQL · MongoDB · Recall.ai · Docker · GCP · LangSmith · LangFuse

Risultato

3–4 insight sul cliente e azioni sul CRM generati per ogni riunione, restituendo a un consulente attivo circa una giornata piena di lavoro a settimana (~6–7 h) prima spesa in redazione manuale. Il notetaker costruito sulla stessa pipeline è usato ogni giorno da 20+ persone.

02

Agente vocale autonomo per il cold outreach

Mavericks.AI — prodotti finanziari

Problema

L'outbound manuale non scala e converte male. Ogni ora che un closer passa a chiamare numeri non qualificati è un'ora che non passa a chiudere.

Cosa ho costruito

Un agente VoIP che chiama da solo i lead freddi, li qualifica in conversazione e indirizza i contatti approvati ai closer umani, reggendo 100+ chiamate simultanee. Tracciamento completo della pipeline con metriche di conversione, così il funnel viene misurato invece che ipotizzato.

Dalla lista fredda all'agenda di un closer

// 100+ chiamate simultanee, senza operatore

Chiamata in corso

linea 47 di 112 · 00:42 · qualificazione

agente vocale
parla l'agente risponde il prospect
prospect

// chiamata di esempio, non una registrazione

  1. Lista fredda

    8,000+

    lead elaborati

    non qualificati finché qualcuno non chiama

    Scheduler

    Lo scheduling in cloud dosa la lista e rimpiazza le linee man mano che le chiamate terminano.

  2. Dialer

    100+ simultanee

    ogni cella è una linea attiva 200+ chiamati / giorno

    chiamate effettuate senza nessuno in linea

  3. Qualificare nella conversazione

    • persona giusta raggiunta
    • aderenza al prodotto dichiarata
    • budget e tempistiche
    • interesse confermato

    i lead squalificati non arrivano mai a un closer

  4. Closer umani

    Solo i contatti approvati vengono inoltrati, così il tempo di chiusura va a chi si è qualificato.

    il passaggio porta con sé

    trascrizione · risposte · motivo della qualificazione

  5. Misurato

    ~3% di conversione su lead freddi

    200+ prospect chiamati al giorno

    Tracciamento del funnel

    • chiamato
    • raggiunto
    • approvato
    • chiuso

    // solo i due estremi sono pubblicati; le fasi intermedie sono misurate, non divulgate

Stack

Vapi · Python · FastAPI · scheduling in cloud · layer di analytics

Risultato

~3% di conversione su lead freddi, con 200+ prospect chiamati al giorno e 8,000+ lead lavorati.

03

Agente di assistenza clienti su larga scala

Mavericks.AI — sanità

Problema

Volume elevato di ticket ripetitivi che consuma ore del team di supporto ogni giorno.

Cosa ho costruito

Un agente di supporto autonomo con recupero del contesto, integrato con i backend del cliente per interrogare il database utenti ed eseguire operazioni sugli account. La sua base di conoscenza migliora da sola: ogni conversazione trasferita a un umano veniva analizzata per colmare la lacuna di copertura che aveva causato il trasferimento, così la risoluzione è cresciuta nel tempo.

Stack

Python · FastAPI · LangChain · LangGraph

Risultato

2,000+ conversazioni al giorno di picco, 55–60% risolte end to end.

In produzione

// operato, non solo consegnato

Ogni esecuzione scrive il proprio registro — passo per passo, chiamata per chiamata, token per token. Quei registri confluiscono in un'unica vista dove la spesa è attribuita al passo che l'ha causata, così un'ottimizzazione può essere scelta invece che indovinata.

1 · Ogni esecuzione si registra

una esecuzione · numeri di esempio

analysis_pipeline riuscita 9 passi · 204.0 s
  1. load_input 120 ms
  2. load_history 40 ms
  3. enrich 12.4 s
  4. summarize 13.9 s
  5. analyze 46.6 s
  6. plan 128.4 s
  7. join 40 ms
  8. commit 60 ms
  9. publish 2.4 s
passo che ha fatto chiamate al modello idraulica

Una regressione ha una posizione prima che qualcuno apra un log: il passo che ha rallentato ha un nome, un orario e un confronto con l'esecuzione di ieri.

chiamate al modello in quella esecuzione

5 chiamate

Modello In / out Costo
Haiku 4.5 69k / 1.2k $0.075
GPT-5 mini 46k / 7.3k $0.013
Haiku 4.5 73k / 5.0k $0.098
Haiku 4.5 8.9k / 4.0k $0.029
GPT-5 mini 5.7k / 3.2k $0.004
totale 203k / 21k $0.219

Il costo è misurato dove accade — per chiamata, su un passo con un nome — così può essere sommato in qualsiasi modo dopo: per esecuzione, per passo, per modello, per pipeline.

~900 esecuzioni in 30 giorni confluiscono in

2 · Una vista su tutte le esecuzioni

finestra di 30 giorni · filtrabile per modello e per pipeline

~900
Esecuzioni nella finestra · ~30 al giorno
~3,300
Chiamate al modello · 3,5 per esecuzione
~$0.07
Costo medio di un'esecuzione
<$0.02
Costo medio di una chiamata al modello
79%
Di tutti i token sono in ingresso
Haiku 4.5
Modello dominante · 55% della spesa

spesa giornaliera

barre, non area — ogni giorno è un insieme discreto di esecuzioni

giorno 1 giorno 15 giorno 30

spesa cumulata

la serie non si interrompe

giorno 1 → giorno 30

// solo la forma — nessun importo compare sui due grafici, perché la spesa assoluta è del cliente

Un cambio di modello o una modifica al prompt appare come un gradino nella curva, che è il modo in cui un esperimento viene misurato invece che discusso.

3 · Dove va la spesa

per passo e per pipeline

  1. artifact_analysis / todo_subgraph 30%
  2. meeting_ingestion / enhance_chunk 22%
  3. artifact_analysis / observation_subgraph 18%
  4. artifact_analysis / summary_subgraph 13%
  5. meeting_ingestion / summarize 11%

Cinque passi su decine portano il 94% del conto. Il lavoro di ottimizzazione va su quei cinque, e mostrare ognuno come pipeline / passo è già la prova: l'attribuzione è per passo, non per applicazione.

4 · Quale leva tirare

profilo dei token per passo — ingresso : uscita

  1. enhance_chunk 1:1
  2. todo_subgraph 3:1
  3. observation_subgraph 13:1
  4. summary_subgraph 35:1
ingresso uscita

Il rapporto nomina la leva. 35:1 è un problema di contesto — mettilo in cache. 1:1 è un problema di generazione — accorcia l'output o sposta il passo su un modello più economico.

chiamate contro spesa, per modello

l'inversione

Chiamate 35%42%22%
Spesa 55%25%20%
Haiku 4.5GPT-5 miniSonnet 4.5

Il modello con meno chiamate non è il più economico: è quello che regge i passi pesanti di contesto. Senza attribuzione per passo quell'inversione è invisibile e l'ottimizzazione ovvia è quella sbagliata.

Il workspace ha almeno tre consulenti, quindi il valore reale è più basso di questo: meno di 25 $ per consulente al mese, contro le sei o sette ore a settimana di stesura manuale che lo stesso sistema elimina. La spesa assoluta è del cliente, quindi questa sezione mostra solo quote, rapporti e costi unitari.

Verificato

// si lancia su richiesta

modifica al codice
suite · 20 scenari ognuno con asserzione
  1. 01
  2. 02
  3. 03
  4. 04
  5. 05
  6. 06
  7. 07
  8. 08
  9. 09
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20

20/20 scenari passano

Devono passare tutti, o la modifica si ferma qui.

Almeno venti scenari coprono gli agenti che parlano con il cliente. La suite si lancia su richiesta, e una modifica arriva a una persona solo dopo che tutti gli scenari sono passati.

Gli output sono verificati in due modi: regex dove l'output ha struttura, un giudice LLM dove è prosa. I guasti reali di produzione entrano nella suite accanto ai percorsi buoni, così un difetto capitato una volta diventa un caso di test permanente.

Stack

// quello che uso, e quello con cui ho già consegnato

Come lavoro

// pratica di ingegneria, non un progetto per un cliente

Con l'IA un team produce un volume enorme di codice. Più di dieci ingegneri che aprono circa quattro PR al giorno fanno 200 PR a settimana; a 15–20 minuti di revisione accurata ciascuna, sono da 50 a 65 ore di ingegneria a settimana solo per il passaggio preliminare. Senza uno strumento che porti con sé la soggettività del proprio ambiente, o si paga quel costo, o si revisiona male.

Così ho costruito automazione del processo di sviluppo su Claude Code: skill di revisione specializzate per dominio, scrittura di codice che segue le convenzioni dell'ambiente, gate automatici di test di qualità e documentazione generata. La tesi che lo regge è che la cultura aziendale deve esistere come documentazione, e la storia del progetto deve essere documentata e riferita di continuo — altrimenti l'agente non ha nulla a cui essere fedele.

Stack

Claude Code · skill personalizzate · CI/CD

Risultato

Adottato da tutti gli ingegneri del team, assorbendo il passaggio preliminare su un flusso di 200 PR a settimana, così il tempo umano di revisione va alle decisioni di design invece che alla scansione.

Esperienza

  1. Lug 2024 — presente

    Ingegnere Full-stack / IA · Mavericks.AI

    Ingegnere IA di riferimento su tre prodotti IA in produzione, dall'architettura al deploy, per i settori finanziario e sanitario.

  2. Apr — Giu 2025

    Sviluppatore Frontend (contratto) · OceanGuard — Paesi Bassi

    Dashboard di telemetria in tempo reale per una piattaforma marittima internazionale. TypeScript, Vue, Nuxt.

  3. Set 2022 — Lug 2024

    Ingegnere del Software · AdaTech — EdTech

    ERP aziendale con strumenti di BI integrati, e API REST distribuite su AWS secondo principi a microservizi.

  4. Gen — Ago 2022

    Ingegnere del Software · IntuitiveCare — finanza sanitaria

    Funzionalità ad alto throughput per una piattaforma di automazione finanziaria al servizio di grandi istituzioni sanitarie.

Chi sono

Costruisco sistemi di IA che girano in produzione e restano in piedi. La maggior parte del mio lavoro riguarda gli agenti: agenti vocali che reggono una conversazione vera, agenti di supporto che risolvono invece di rimbalzare, e piattaforme in cui l'agente ha accesso strutturato e in tempo reale a un sistema vivo, non a un mucchio di contesto raccolto alla rinfusa.

Sotto il lavoro sull'IA c'è ordinaria ingegneria full-stack, ed è la parte che secondo me fa sopravvivere gli agenti all'impatto con la produzione. Python e TypeScript, FastAPI e Next.js, Postgres e Mongo, Docker, AWS e GCP, CI/CD e monitoraggio — lo strato senza glamour che decide se una demo diventa un prodotto.

Sono laureato in Informatica all'Università di São Paulo, dove ho anche costruito SPIRA — un sistema di ML a microservizi che rileva l'insufficienza respiratoria tramite analisi acustica della voce, in PyTorch, Airflow e MLflow. A settembre 2026 inizio la laurea magistrale in Intelligenza Artificiale all'Università di Bologna.

Sono disponibile per lavoro da remoto a tempo pieno con orari flessibili e per collaborazioni a contratto part-time. Lavoro in inglese e portoghese; il mio italiano è intorno all'A2/B1 e sta migliorando, quindi un team italiano funziona bene se anche l'inglese è lingua di lavoro. Vivo a Bologna e sono disponibile di persona qui.

Parliamone

Assunzione, consulenza o solo due parole sugli agenti in produzione — uno qualsiasi di questi mi raggiunge.

Email WhatsApp // ai agent: in arrivo LinkedIn GitHub CV (PDF)