Applied AI engineer · Piacenza, Italy
I put AI systems in front of the people who actually have to use them.
I build agents, MCP servers and evals — plus the production plumbing nobody demos: streaming, retries, rate limits, cost ceilings.
Fifteen years as a product designer before that, which is the part that matters. I have spent a career watching where real workflows break. Now I build the systems that survive them.
Currently interviewing for Forward Deployed Engineer roles in Europe
The problem I work on
Most AI projects don’t fail at the model.
They fail at the workflow.
The demo works. The pilot works. Then it meets the twelve undocumented steps the team actually performs, and it quietly stops being used — without anyone filing a complaint.
Shipped
Systems, not slides.
Each one written the same way: context, constraint, what I built, what happened after. Including the parts that broke.
-
A Claude skill that refuses to audit a screen it hasn't seen
Open source, with the eval that caught the version that didn't
Claude skillsEval designHCIBenchmarkingRead it -
An NLP matching engine for temporary work, in production
Co-founded and ran the company that shipped it
NLPConversational interfaceMatchingRead it -
Encoding thirty years of patternmaking habit into a CAD tool
Research that set the interaction model for 2Design
Field researchContextual interviewsUsability testingRead it -
Automating pre-press in a corrugated cardboard plant
Software into a floor where nobody cares what framework you used
Workflow automationPre-pressIndustrial ITRead it
The method
Fifteen years of this became a protocol.
I wrote it down because I kept doing the same three things in every deployment, in a cardboard plant and in a data room alike. It became a book. It is really a checklist for finding the lower track.
- 01
Deconstruct
Strip the requirement down to the job being done.
Most AI projects automate the task that was easiest to describe in a meeting — not the one that was costing anything. The first pass throws away the brief and rebuilds it from what people actually do.
- 02
Decode
Map the system the humans already run.
Including the parts that exist only in someone’s head, the workarounds nobody admits to, and the exception that one person handles by hand every Thursday. This is where deployments die, and it is never in the documentation.
- 03
Validate
Test against real use before the expensive code exists.
Thirteen heuristics, each with an observable pass or fail criterion and a severity tied to task impact. Not taste, not opinion — a checklist that two people run separately and agree on.
Published as The UX DeCode (Italian). How it applies to AI deployment
What I work with
The honest version.
I write production code. I also know which half of a deployment isn’t a code problem — that is the combination I am selling.
Build
- Python
- TypeScript
- Swift / SwiftUI
- Node
Model layer
- Claude API
- MCP servers
- Agent skills
- Tool use / function calling
Keep it honest
- Eval harnesses
- Prompt regression tests
- Cost + latency budgets
- Failure-mode logging
Ship it
- Cloudflare Workers
- Git-based CI
- Postgres
- Native macOS / iOS
Background
Founder, designer, engineer — in that order.
I co-founded and ran an AI startup. I have shipped software into a corrugated cardboard plant, an iris-recognition hardware company and a fashion CAD vendor — places where nobody cares about your framework and the workflow has existed for thirty years.
Master’s in AI. Product design at Politecnico di Milano, where I now lecture. I wrote a book about why interfaces fail.
The longer version
Looking for someone who can get a system working inside somebody else’s organisation?
That is the job I want. Based in Italy, happy to travel, comfortable being the person in the room who does not yet know the domain.