---
title: "Emilio Potenza — Product Owner in Aruba"
description: "Product Owner e Team Manager su frontend condivisi, CMS, siti di brand ed e-commerce. Dieci anni nel software enterprise, cinque nella bioinformatica."
lang: it
canonical: https://potenza.dev/it/
alternate:
  en: https://potenza.dev/index.md
author: "Emilio Potenza"
---

> Site index
> Markdown pages are indexed at https://potenza.dev/llms.txt

product owner · team leader · senior frontend developer · bioinformatica

# Emilio Potenza

Prodotti digitali enterprise, dal primo schema di soluzione alla consegna, su architetture che si rifiutano di essere semplici. Con una spolverata di AI.

[Curioso?](https://potenza.dev/it/chi-sono/)

astro-island,astro-slot,astro-static-slot{display:contents}(()=>{var a=(s,i,o)=>{let r=async()=>{await(await s())()},t=typeof i.value=="object"?i.value:void 0,c={rootMargin:t==null?void 0:t.rootMargin},n=new IntersectionObserver(e=>{for(let l of e)if(l.isIntersecting){n.disconnect(),r();break}},c);for(let e of o.children)n.observe(e)};(self.Astro||(self.Astro={})).visible=a;window.dispatchEvent(new Event("astro:visible"));})();(()=>{var g=Object.defineProperty;var w=(a,s,c)=>s in a?g(a,s,{enumerable:!0,configurable:!0,writable:!0,value:c}):a\[s\]=c;var l=(a,s,c)=>w(a,typeof s!="symbol"?s+"":s,c);var E=new Set(\["\_\_proto\_\_","constructor","prototype"\]);{let a={0:t=>y(t),1:t=>c(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(c(t)),5:t=>new Set(c(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t),11:t=>Number.POSITIVE\_INFINITY\*t},s=t=>{let\[p,e\]=t;return p in a?a\[p\](e):void 0},c=t=>t.map(s),y=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map((\[p,e\])=>\[p,s(e)\]));class f extends HTMLElement{constructor(){super(...arguments);l(this,"Component");l(this,"hydrator");l(this,"hydrate",async()=>{var b;if(!this.hydrator||!this.isConnected)return;let e=(b=this.parentElement)==null?void 0:b.closest("astro-island\[ssr\]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let r=this.querySelectorAll("astro-slot"),n={},d=this.querySelectorAll("template\[data-astro-template\]");for(let o of d){let i=o.closest(this.tagName);i!=null&&i.isSameNode(this)&&(n\[o.getAttribute("data-astro-template")||"default"\]=o.innerHTML,o.remove())}for(let o of r){let i=o.closest(this.tagName);i!=null&&i.isSameNode(this)&&(n\[o.getAttribute("name")||"default"\]=o.innerHTML)}let u;try{u=this.hasAttribute("props")?y(JSON.parse(this.getAttribute("props"))):{}}catch(o){let i=this.getAttribute("component-url")||"<unknown>",v=this.getAttribute("component-export");throw v&&(i+=\` (export ${v})\`),console.error(\`\[hydrate\] Error parsing props for component ${i}\`,this.getAttribute("props"),o),o}let h;await this.hydrator(this)(this.Component,u,n,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))});l(this,"unmount",()=>{this.isConnected||this.dispatchEvent(new CustomEvent("astro:unmount"))})}disconnectedCallback(){document.removeEventListener("astro:after-swap",this.unmount),document.addEventListener("astro:after-swap",this.unmount,{once:!0})}connectedCallback(){if(!this.hasAttribute("await-children")||document.readyState==="interactive"||document.readyState==="complete")this.childrenConnectedCallback();else{let e=()=>{document.removeEventListener("DOMContentLoaded",e),r.disconnect(),this.childrenConnectedCallback()},r=new MutationObserver(()=>{var n;((n=this.lastChild)==null?void 0:n.nodeType)===Node.COMMENT\_NODE&&this.lastChild.nodeValue==="astro:end"&&(this.lastChild.remove(),e())});r.observe(this,{childList:!0}),document.addEventListener("DOMContentLoaded",e)}}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}getRetryImportUrl(e){let r=new URL(e,document.baseURI);return r.searchParams.set("astro-retry",Date.now().toString()),r.toString()}async importWithRetry(e){try{return await import(e)}catch(r){return await new Promise(n=>setTimeout(n,1e3)),import(this.getRetryImportUrl(e))}}handleHydrationError(e){let r=this.getAttribute("component-url"),n=new CustomEvent("astro:hydration-error",{cancelable:!0,bubbles:!0,composed:!0,detail:{error:e,componentUrl:r}});this.dispatchEvent(n)&&console.error(\`\[astro-island\] Error hydrating ${r}\`,e)}async start(){let e=JSON.parse(this.getAttribute("opts")),r=this.getAttribute("client");if(Astro\[r\]===void 0){window.addEventListener(\`astro:${r}\`,()=>this.start(),{once:!0});return}try{await Astro\[r\](async()=>{let n=this.getAttribute("renderer-url");try{let\[d,{default:u}\]=await Promise.all(\[this.importWithRetry(this.getAttribute("component-url")),n?this.importWithRetry(n):Promise.resolve({default:()=>()=>{}})\]),h=this.getAttribute("component-export")||"default";if(h.includes(".")){this.Component=d;for(let m of h.split(".")){if(E.has(m)||!this.Component||typeof this.Component!="object"&&typeof this.Component!="function"||!Object.hasOwn(this.Component,m))throw new Error(\`Invalid component export path: ${h}\`);this.Component=this.Component\[m\]}}else{if(E.has(h))throw new Error(\`Invalid component export path: ${h}\`);this.Component=d\[h\]}return this.hydrator=u,this.hydrate}catch(d){return this.handleHydrationError(d),()=>{}}},e,this)}catch(n){this.handleHydrationError(n)}}attributeChangedCallback(){this.hydrate()}}l(f,"observedAttributes",\["props"\]),customElements.get("astro-island")||customElements.define("astro-island",f)}})();

Alcuni marchi con cui ho lavorato

-   Ducati
-   Lamborghini
-   Edenred
-   Eli Lilly
-   Marelli
-   Pramac
-   YOOX Net-A-Porter
-   Aruba

Product Owner in Aruba. Quasi vent’anni di codice — dal sequenziamento del DNA all’architettura frontend.

expertise

## [Cosa faccio](https://potenza.dev/it/competenze/)

-   ### Prodotti digitali & design system
    
    Il lavoro sui frontend condivisi unisce product ownership, gestione del team e visione tecnica.
    
-   ### CMS & content architecture
    
    Un CMS deve far lavorare insieme modelli di contenuto, flussi editoriali e canali.
    
-   ### Siti brand & web experience
    
    Siti, configuratori e app devono restare coerenti tra prodotti e mercati.
    
-   ### eCommerce
    
    Una piattaforma commerce enterprise deve coprire vendita, servizi e post-vendita.
    
-   ### AI & Machine Learning
    
    Cinque anni di ricerca in bioinformatica hanno prodotto modelli predittivi, pipeline e database.
    

portfolio

## [Progetti selezionati](https://potenza.dev/it/percorso/)

2017 – 2026

### Ducati

Frontend lead e solution architect (come consulente)

Il sito brand, il configuratore moto e il CMS che li regge, seguiti per anni, fino a guidare il passaggio a uno stack composable.

2021 – 2023

### Edenred

Technical team leader (come consulente)

Technical team leader frontend in un progetto di re-platforming a micro-frontend di una grande piattaforma di welfare aziendale, con più fornitori.

2025 – oggi

### Aruba

Solution design → Product Owner

Ho conosciuto Aruba come consulente, prendendo parte ad alcuni progetti. Oggi ho colto la sfida di guidare un team di sviluppatori frontend molto competente nel rinnovamento frontend di alcuni storici prodotti Aruba.

Appunti

## [Appunti scelti](https://potenza.dev/it/blog/)

-   Content
    
    1 ago 2026·4 min di lettura
    
    ## [Quando un sito è leggibile anche per un agente](https://potenza.dev/it/blog/siti-leggibili-agli-agenti/)
    
    Un sito diventa utile agli agenti quando le sue informazioni hanno fonti riconoscibili, relazioni esplicite e contenuti coerenti.
    
-   Digital
    
    1 ago 2026·7 min di lettura
    
    ## [Quando il frontend diventa una piattaforma](https://potenza.dev/it/blog/il-frontend-condiviso/)
    
    In un’azienda con molti prodotti, il frontend non si limita a rendere le interfacce coerenti. Deve rendere più semplici le decisioni che i team prendono insieme.
    
-   AI
    
    1 ago 2026·4 min di lettura
    
    ## [Esiste ancora spazio per il dubbio?](https://potenza.dev/it/blog/il-dubbio/)
    
    Quando una risposta ben scritta arriva senza verifiche, il nostro compito diventa decidere che cosa meriti davvero fiducia.
    

La mia casella è aperta: idee, domande, o una buona discussione sulla vita, l’universo e tutto quanto.

[Scrivimi](https://potenza.dev/it/contatti/)
