[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"portfolio-it-soource":3,"portfolio-index-it":139},{"id":4,"title":5,"body":6,"client":5,"description":112,"draft":113,"duration":114,"extension":115,"image":116,"locale":117,"meta":118,"navigation":119,"partner":120,"path":121,"publishedAt":122,"seo":123,"seoTitle":124,"slug":125,"stack":126,"stem":132,"tags":133,"today":136,"url":137,"__hash__":138},"portfolio\u002Fit\u002Fportfolio\u002Fsoource.md","Soource",{"type":7,"value":8,"toc":102},"minimark",[9,14,18,21,24,28,31,34,38,41,44,48,51,54,76,79,82,86,89,92,96,99],[10,11,13],"h2",{"id":12},"la-ricerca-di-una-sfida","La ricerca di una sfida",[15,16,17],"p",{},"Da un po' lavoravo a partita IVA e mi stavo guardando intorno per trovare una nuova opportunità nel mondo startup. Io, patito di startup, cercavo una sfida che, uno, mi permettesse di dare il massimo, come mio solito fare, in ambienti stimolanti e, due, di creare qualcosa e portarlo alla luce. Così vedo un annuncio su LinkedIn per una posizione come backend developer in Functional e mi candido. Studio bene l'azienda.",[15,19,20],{},"Functional è nata da un'idea di Maicol Verzotto e Nazareno Mario Ciccarello, e il progetto all'inizio è nato sulla base di un prodotto chiamato DRIVEgum, una gomma da masticare senza zucchero con caffeina e guaranà per tenere sveglio chi guidava di notte: l'idea era quella di creare dei «functional food».",[15,22,23],{},"Poi è stata incubata al NOI Techpark e durante il Covid si sono ingranditi molto, avviando una produzione loro di mascherine chirurgiche certificate, fino ad arrivare a produrre un milione di pezzi a settimana.",[10,25,27],{"id":26},"i-colloqui","I colloqui",[15,29,30],{},"Faccio il primo colloquio e conosco Maicol (Verzotto). L'incontro va bene, mi lascia una buonissima impressione e credo a mia volta di essergli piaciuto, così fissiamo un secondo incontro e conosco Matteo (Biasi). Faccio il colloquio tecnico, va bene: ricordo che mi fece una domanda alla quale risposi in modo originale. Si aspettava una risposta diversa, ma il risultato a cui arrivava la mia risposta era lo stesso, in maniera forse più efficiente.",[15,32,33],{},"Così partono a raccontarmi il progetto: si trattava di lavorare a un sistema che rivoluzionasse il modo di fare acquisti per le imprese. L'idea mi piace e decidiamo di collaborare.",[10,35,37],{"id":36},"ripartire","Ripartire",[15,39,40],{},"Conosco così Luca (Taddeo) e Giulio (Pattaro), che mi mostrano i repo e il progetto. Luca mi racconta che avevano già investito parecchi soldi con una società terza, che aveva realizzato una versione in Java impossibile da mantenere e che non c'entrava nulla. Così ci rimbocchiamo le maniche entrambi e proviamo a rattoppare partendo da una codebase template realizzata da Matteo. Il prodotto sale pian piano, ma dopo due mesi ci accorgiamo che non era la strada giusta: serviva il prodotto e serviva in fretta.",[15,42,43],{},"A supporto entra in azienda Stefano (Pedone) e dopo poche settimane, in un retreat aziendale, decidiamo di ripartire con una nuova infrastruttura, più snella, più veloce, in modo da avere un prodotto e predisporlo pian piano a una futura migrazione. La scelta migliore che potessimo prendere: nella settimana del retreat abbiamo tirato su tutto il nuovo backend funzionale del software, e vi parlo del 2023... non esisteva ancora il vibe coding per come lo intendiamo oggi. Luca spingeva fortissimo sul frontend, Stefano sull'infrastruttura, Matteo mediava e Giulio faceva magie di design e UX. Un dream team da paura.",[10,45,47],{"id":46},"il-problema-delle-email","Il problema delle email",[15,49,50],{},"Allo stesso tempo però nasceva un problema più grande, quello degli invii massivi di email per la parte di «soourcing» (la ricerca del fornitore migliore da una campagna di richiesta preventivi) e soprattutto l'analisi automatica delle risposte per la loro classificazione. In quel periodo era appena stato pubblicato ChatGPT, ma non era ancora integrabile in un prodotto... quindi mi rimbocco le maniche, rispolvero le mie conoscenze di NLP e TensorFlow e tiro su un sistema che, in primo luogo, riuscisse a separare i thread email e i messaggi di risposta e, in secondo luogo, ne estraesse il sentiment ed eventualmente le informazioni relative al preventivo finale e al tipo di risposta, oltre a tracciare lo stato di invio e di apertura.",[15,52,53],{},"Non avete idea di quanto sia stato difficile gestire l'estrazione dei messaggi:",[55,56,57,61,64,67,70,73],"ul",{},[58,59,60],"li",{},"messaggi di risposta automatici;",[58,62,63],{},"ritorni di invii falliti a causa di indirizzi email errati;",[58,65,66],{},"email che embeddavano la richiesta nella risposta;",[58,68,69],{},"formati file non supportati;",[58,71,72],{},"ambiguità nel riconoscere il sentiment;",[58,74,75],{},"formati email differenti in base al dispositivo da cui arrivava la risposta.",[15,77,78],{},"Insomma, una complessità ingegneristica non da poco, per la scarsità di dati di test di cui disponevamo e per lo stato generale della tecnologia su quel fronte. Trainare un modello da zero su un Mac M1 da 8 GB di RAM era l'immagine perfetta.",[15,80,81],{},"E la prima versione funzionava, qualche demo la reggeva, e in generale il primo giro in produzione è arrivato dopo appena 4 mesi dalla scelta di rifattorizzare.",[10,83,85],{"id":84},"il-pre-seed-e-la-nascita-di-soource","Il pre-seed e la nascita di Soource",[15,87,88],{},"Poco dopo, grazie al super lavoro di Maicol (Verzotto), Silvia (Chiarot), Serena (Galli) e Nazareno (Mario Ciccarello), arriva il pre-seed: la società si sgancia da Functional e nasce a tutti gli effetti Soource, e con essa una marea di lavoro: integrazioni, feature, bugfixing.",[15,90,91],{},"Arrivano i primi modelli API di LLM da OpenAI e si parte con l'integrazione di GPT-3 nel sistema. La qualità aumenta, poi si passa a GPT-3.5, poi 4, poi 4o, e lì nasce un'esigenza diversa: creare un sistema di routing e orchestrazione che ci permettesse di ottenere il miglior risultato con il minor numero di token consumati. Così sviluppo un SDK dedicato solo a quello. Tra i vari problemi da risolvere con l'SDK c'erano la malformazione degli output (la tipizzazione a oggetti in risposta non funzionava come oggi), il parsing delle risposte e l'ideazione di un sistema di output più efficiente, con label taggate e rimappate nell'SDK. Tutto per tenere la bolletta bassa e avere il miglior risultato possibile.",[10,93,95],{"id":94},"una-nuova-sfida","Una nuova sfida",[15,97,98],{},"Ho vissuto questo progetto per oltre due anni, fino a quando, dopo il viaggio a Lisbona per presentarlo al Web Summit, mi sono reso conto che avevo iniziato una nuova vita a Gran Canaria ed era giunto il momento di trovare una nuova sfida che potesse darmi la stessa energia che avevo vissuto fino a quel momento.",[15,100,101],{},"Ringrazio ancora tutto il team di Soource per la bellissima esperienza e per avermi fatto conoscere persone fantastiche, con le quali sono tuttora in contatto.",{"title":103,"searchDepth":104,"depth":104,"links":105},"",2,[106,107,108,109,110,111],{"id":12,"depth":104,"text":13},{"id":26,"depth":104,"text":27},{"id":36,"depth":104,"text":37},{"id":46,"depth":104,"text":47},{"id":84,"depth":104,"text":85},{"id":94,"depth":104,"text":95},"Più di due anni dentro Soource: dalla ripartenza in una settimana di retreat al primo giro in produzione dopo 4 mesi, fino al pre-seed. Il sistema che legge e classifica le risposte dei fornitori.",false,"Oltre due anni, in produzione dopo 4 mesi","md",null,"it",{},true,"Functional e il team di Soource","\u002Fit\u002Fportfolio\u002Fsoource","2024-07-01",{"title":5,"description":112},"Soource · il prodotto AI per gli acquisti, dal retreat al pre-seed","soource",[127,128,129,130,131],"Next.js","NestJS","AWS","TensorFlow","OpenAI","it\u002Fportfolio\u002Fsoource",[134,135],"Prodotto","Intelligenza artificiale","Seed da 3 milioni guidato da Vertis (giugno 2026)","https:\u002F\u002Fsoource.com","drr9HhtjtSq1kvk9oslnWDRk0Xxt78xfwYGpcnuo3TE",{"items":140},[141,151,160,168,179,188,198,200],{"id":142,"path":143,"slug":144,"title":145,"description":146,"publishedAt":147,"locale":117,"draft":113,"client":145,"tags":148,"image":116},"portfolio\u002Fit\u002Fportfolio\u002Fsnowinch.md","\u002Fit\u002Fportfolio\u002Fsnowinch","snowinch","Snowinch","Il marchio di Snowinch dalla prima versione del 2024, con l'aurora di Giulio Pattaro, alla versione 5 di oggi: cosa si è perso per strada, cosa abbiamo buttato e cosa è rimasto.","2026-10-17",[149,150],"Marchio","Rebranding",{"id":152,"path":153,"slug":154,"title":155,"description":156,"publishedAt":157,"locale":117,"draft":113,"client":155,"tags":158,"image":116},"portfolio\u002Fit\u002Fportfolio\u002Fadsuite.md","\u002Fit\u002Fportfolio\u002Fadsuite","adsuite","ADSuite","Da un'idea nata a inizio luglio a un prodotto in produzione in meno di 30 giorni: la suite AI di ADevolution per installatori, mobile first e a consumo, dal computo metrico al preventivo firmato.","2026-07-10",[134,159],"Mobile first",{"id":161,"path":162,"slug":163,"title":164,"description":165,"publishedAt":166,"locale":117,"draft":113,"client":164,"tags":167,"image":116},"portfolio\u002Fit\u002Fportfolio\u002Fadevolution.md","\u002Fit\u002Fportfolio\u002Fadevolution","adevolution","ADevolution","Da «soluzioni digitali per installatori» a sistema di crescita: il rebranding di ADevolution in tre versioni, dal pittogramma al brandbook semplificato.","2026-02-24",[149,150],{"id":169,"path":170,"slug":171,"title":172,"description":173,"publishedAt":174,"locale":117,"draft":113,"client":175,"tags":176,"image":116},"portfolio\u002Fit\u002Fportfolio\u002Fcovercraft.md","\u002Fit\u002Fportfolio\u002Fcovercraft","covercraft","CoverCraft","Applicazione desktop nativa per produttori musicali. Crea video YouTube-ready per type beat in pochi minuti, senza passare tra Canva, After Effects e tool di export.","2025-02-01","TypeBeatHouse",[177,178],"Product engineering","Desktop app",{"id":180,"path":181,"slug":182,"title":183,"description":184,"publishedAt":185,"locale":117,"draft":113,"client":183,"tags":186,"image":116},"portfolio\u002Fit\u002Fportfolio\u002Fleadspring.md","\u002Fit\u002Fportfolio\u002Fleadspring","leadspring","LeadSpring","Piattaforma SaaS per la validazione di idee e la conversione di traffico tramite quiz interattivi generati con AI. Multilingue, con analytics avanzati e integrazione Stripe.","2024-11-01",[177,187],"SaaS",{"id":189,"path":190,"slug":191,"title":192,"description":193,"publishedAt":194,"locale":117,"draft":113,"client":195,"tags":196,"image":116},"portfolio\u002Fit\u002Fportfolio\u002Fcosmico.md","\u002Fit\u002Fportfolio\u002Fcosmico","cosmico","Cosmico","Da freelance iscritto a Cosmico al progetto interno: onboarding e profilazione dei talenti rifatti e online in 3 mesi, poi il nuovo backoffice, le integrazioni con il CRM e Flatmates.","2024-09-01","Cosmico S.R.L",[134,197],"Scaleup",{"id":4,"path":121,"slug":125,"title":5,"description":112,"publishedAt":122,"locale":117,"draft":113,"client":5,"tags":199,"image":116},[134,135],{"id":201,"path":202,"slug":203,"title":204,"description":205,"publishedAt":206,"locale":117,"draft":113,"client":204,"tags":207,"image":116},"portfolio\u002Fit\u002Fportfolio\u002Fnotarify.md","\u002Fit\u002Fportfolio\u002Fnotarify","notarify","Notarify","Nuovo motore di notarizzazione documenti su blockchain, con API B2B per integrazioni esterne. Abbiamo riscritto il core del sistema e reso la notarizzazione accessibile programmaticamente.","2024-04-01",[177,208],"Blockchain B2B"]