Who I am

25+ years in software, from enterprise mainframe to cloud-native systems for the European Commission. I've spent my career doing one thing under different names: governing the correctness of complex systems built by others — human distributed teams before, coding agents today.

Sectors I've worked in

European Institutions / Public Sector

European Commission (via Everis / NTT Data), since 2018

Cloud-native, event-driven microservices, multi-layer security. Software Architect since 2023.

Automotive & Industrial

Fiat, Iveco, Avio (Aerospace & Defense), New Holland, Fiat Hitachi

Global portals, factory IoT, real-time machine drivers, multi-market warranty, SAP integration.

Energy

Snam Rete Gas, ENI

Mission-critical J2EE portals, IBM FileNet document management, ESB.

Banking & Finance

Monte dei Paschi di Siena, Intesa Sanpaolo, CR Parma e Piacenza, Finanziaria Romana

Core banking re-engineering, Bank of Italy compliance, QA leadership over Italy/India/Romania teams.

Insurance

Reale Mutua, Fondiaria-SAI, Toro Assicurazioni

Insurance platforms, root-cause analysis, go-live certification.

Human Capital / HR

IBM Europe, Autogrill

SAP HCM / HR Access, EU regulatory localization, international tax integrations.

Travel & Media

Costa Crociere, Seat Pagine Gialle

Booking systems, core application maintenance.

Why Rust

It wasn't a leap into the unknown. Rust reminded me of pieces of everything I'd already done.

From COBOL / mainframe

Rigor about where the bytes live. On the mainframe I worked with explicit data and memory layouts; in Rust, control over ownership and representation is the same discipline, decades later. When I reason about a tensor's Q4 packing, I use the same mental model as a VSAM record.

From Java and its frameworks

The contract. Rust traits are Java interfaces taken to the extreme: Spring taught me to program to contracts and dependency injection; nxm-core is the same principle (pure trait layers, swappable implementations) without the runtime weight.

From C

Closeness to the hardware without a safety net — except Rust has the safety net. Dispatching kernels on the GPU is C-level work, but the borrow checker spares me the whole class of bugs that costs weeks in C.

From Lisp

Expressiveness. Pattern matching, algebraic enums, Result / Option: it's the functional mindset I liked in Lisp, made practical and fast.

Rust is where the three things my career chased separately finally meet: the control of the mainframe, the contracts of enterprise Java, the speed of C — with the safety none of those worlds had on its own. For a local AI system, where performance and correctness aren't negotiable, it was the natural choice.

Always glad to talk about AI systems, governance and Rust. The best place to reach me is LinkedIn.

Connect on LinkedIn →

Create a free website with Framer, the website builder loved by startups, designers and agencies.