Skip to content
Berktug Berke Ates

Software Engineer

Contact

Blog

Appunti sul campo su architettura software, prodotti di IA, ingegneria cross-platform, affidabilità e leadership tecnica.

Modelli di permesso per copiloti AI multi-tenantUn copilota AI multi-tenant che eredita i permessi chat ma ignora le ACL dati citerà con sicurezza il tenant sbagliato. Le tool call devono usare lo stesso percorso di autorizzazione delle vostre API—scoped per tenant, ruolo e risorsa. · 7 min di letturaInvalidazione cache per UI AI personalizzateLe superfici AI personalizzate mettono in cache embedding, completion e frammenti UI per la velocità—poi servono la risposta sbagliata all'utente sbagliato. L'invalidazione deve tracciare identità, entitlement e versioni di prompt, non solo il TTL. · 7 min di letturaProgettare code di escalation umana per gli agentGli agent che non escalano mai sembrano autonomi—finché non fanno fallire gli utenti in silenzio. Le code di escalation richiedono regole di triage, context pack, SLA e feedback loop—non un generico pulsante 'parla con un umano' appiccicato alla chat. · 7 min di letturaAttribuzione dei costi per gateway LLM condivisiUn gateway LLM condiviso senza attribuzione dei costi diventa un buco nero: i team ottimizzano i prompt in locale mentre finance vede una fattura opaca. Tagga ogni token a tenant, prodotto e caller—altrimenti niente chargeback, throttle o debug della spesa. · 7 min di letturaConflitti di sync offline-first nelle app mobileL'UX offline-first promette continuità; la sync promette consistenza eventuale. Senza modelli di conflitto espliciti, gli utenti vedono azioni duplicate, edit persi e ticket che si riproducono solo in aereo. · 7 min di letturaFeature store vs prompt store: compromessiI feature store ottimizzano segnali deterministici per i modelli; i prompt store ottimizzano linguaggio, tool e policy per gli LLM. Confonderli crea doppia verità e contesto stantio. · 7 min di letturaContract testing per il tool calling IAQuando il modello inventa argomenti o salta campi obbligatori, i unit test sul prompt non bastano. I contract test trasformano gli schemi tool in confini vincolanti tra modello e sistemi. · 7 min di letturaProgressive delivery per SaaS multi-tenantInviare lo stesso binary a tutti i tenant insieme è una scelta di blast radius. La progressive delivery prova il cambiamento sulle coorti giuste prima che l'intera flotta lo senta. · 7 min di letturaMisurare la qualità del retrieval senza vanity metricLa similarità di embedding e il click in demo non provano che il retrieval aiuti gli utenti. Misurate il successo del task, i tassi di risposte grounded e gli hard negative che non devono restituire nulla. · 7 min di letturaModelli di ownership per codice platform condivisoLe library condivise senza owner chiari diventano la dipendenza di tutti e l'incidente di nessuno. Scegliete un modello di ownership allineato a blast radius, ritmo di change e chi viene paginato. · 7 min di lettura