Building the intelligence
that moves capital.
Software Engineer at Bending Spoons, on the WeTransfer team. Lead Engineer at Sail, where I founded the intelligence layer — a cross-chain yield engine and a real-time risk system with $700M routed across Base and Arbitrum — and now own the whole stack: an onchain protocol live on 12 chains, an open-source agent harness, and the Python services behind them.
Software Engineer on WeTransfer.
I joined Bending Spoons as a Software Engineer on the WeTransfer team — file transfer and collaboration used by tens of millions of people. More here as I ship.
Onchain accounts an agent can drive. Within bounds.
Letting an autonomous agent move real money is a custody problem before it is an ML problem. Sail Protocol is our answer: capital never leaves a Safe the user owns, and a mandate — a set of contracts the user deploys — is checked by the kernel on every single transaction. The agent holds no key and can do nothing the mandate does not explicitly allow. Sailor is the open-source harness that makes building one of those agents a conversation with your coding assistant.
01 What the kernel guarantees
Permissions are evaluated through staticcall, so a permission contract physically cannot mutate state or re-enter. Reentrancy is not defended against — it is made impossible by the calling convention.
Evaluation runs under a fixed cap — 150,000 gas for a single evaluate, 1,000,000 for a batch. A permission that tries to burn gas to force a pass is treated as a denial.
Only the one permission named in the manager's signature is consulted, so unrelated templates coexist on the same account without falsely denying each other.
Any revert, out-of-gas, malformed return value, or plain false denies the dispatch. The only path to execution is an explicit, well-formed true.
Why the size matters. The trusted core — kernel, governance, timelock, factory, fee policy, module enabler — is everything an account must trust to use Sail at all. At ~1,022 nSLOC it is small enough for one person to read end to end in an afternoon, which is the point. The permission templates sit outside that boundary: they are demonstrations of the pattern, and you only trust the ones you choose to register. Reviewed by Octane across three analyses; deployed via CREATE2 at identical addresses on all 12 chains, governed behind a 48-hour timelock with a 3/5 admin Safe.
02 Sailor — the harness
Say start in an empty folder and any AI coding agent — Claude Code, Cursor, Codex — walks you to a running DeFi agent. Five stations, end to end:
Under it: an SDK with an encrypted keyring, EIP-712 signing and dispatch submission; a CLI covering the whole lifecycle from init to run; a local dashboard for balances, mandate health and owner signing; and 22 agent skills that any coding agent reads natively, so every project follows the same verified path. Around it, Shipyard (an anvil-fork lab for paper-trading a mandate before it touches real money) and Dock (a community registry of shared agent projects).
Two production systems. One intelligence layer.
I founded the intelligence layer at Sail — a DeFi yield-optimization protocol on Base and Arbitrum — from a blank page, and led a team of two engineers building it. Since March 2026 I’m Lead Engineer, owning technical direction across the full stack: the Solidity protocol, the open-source TypeScript harness, and the Python services. I also defined the database schema and built the first user-facing UIs.
Cross-chain allocation as a constrained MDP
Non-convex objective (yield, transaction cost, slippage, concentration risk) solved with simulated annealing under Metropolis-Hastings acceptance. A CNN meta-controller predicts annealing hyperparameters from APY/TVL history, cutting parameter search 3–5×.
Real-time risk monitoring
z-score anomaly detection over multi-horizon APY baselines (1d / 7d / 30d), dual-mode SPIKE / TREND scoring (80/20 vs 40/60), tier-based execution cycles (1h / 2h / 6h), and a financial-inertia mechanism that cut unnecessary portfolio churn by 43 %.
Leadership. Presented the intelligence layer to venture investors during fundraising rounds, owned the technical narrative for the engine and Sonar in those conversations, and led roadmap discussions with the CEO on direction and trade-offs.
01 The math behind allocation
The full mathematical framework — formulation, proofs, and empirical validation — is documented in two public research papers I authored.
02 Sonar — anomaly score
Sonar suspended user exposure ahead of two publicly confirmed exploits — detection happened before public confirmation in both cases:
- · Moonwell oracle exploit $1.78M bad debt, 181 borrowers harmed. Sonar flagged abnormal oracle behaviour on Moonwell's Base markets and suspended exposure before the scale of the exploit was publicly confirmed.
- · Resolv Protocol exploit ~$80M USR minted via a compromised AWS KMS key, ~$25M ETH extracted, USR de-pegged to $0.003. Sonar detected unchecked-minting activity and suspended Resolv-exposed positions before USR's de-peg became publicly visible.
03 Production performance
All returns net of gas, bridge fees, slippage, and protocol fees.
| quarter | mean APY | vs. best static | vs. T-Bills | scope |
|---|---|---|---|---|
| Q4 2025 | 8.91 % | +5.43 % | +123.87 % | 20 sources, USDC + USDT |
| Q1 2026 | 6.06 % | +6.03 % | +44.3 % | 32 sources, USDC + USDT, +EURC |
A neural network for yield.
Most "AI yield optimizers" don't predict yield — they rank by trailing APY. This piece breaks down the architectural call to use convolutional networks (not LSTMs, not boosted trees) for calibrated APY forecasts, and why the same framework that finds edge in equities applies far better to DeFi.
Quant Mentality: How We Use Convolutional Networks to Outyield DeFi
"The strategy stops being a fund and becomes a function: capital × constraints × risk aversion → portfolio."
Conditional expectation, stationary features, calibrated uncertainty, disciplined validation — the same framework systematic shops use in equities, pointed at DeFi vaults where it works better.
Read the article →+ calibrated uncertainty
per vault, per day
04 Publications
All four are sole-author work.
Where I built the muscle.
- Accelya — Software Engineer I · payments management application, full-stack · Java · C# · .NET · SQL · Dec 2023 – Nov 2024
- Career break — international travel and industry exploration. Post-graduation trip across South Korea and the U.S. West Coast (San Francisco, Cupertino, Stanford, Berkeley); met engineers at Apple and Berkeley alumni while visiting family. · Jul – Nov 2023
- Deloitte — Technology Strategy & Transformation intern · market research and analysis for technology clients in the data division · RapidMiner · Dataiku · Alteryx · Mar – Jun 2023
- European Union Agency for Railways — software engineering intern · SHACL shapes for knowledge-graph validation in the EUAR maps app, plus a web dashboard for validation reports · SPARQL · SHACL · RDF · Winter 2022/23
Things I built because I wanted to.
CLI + TUI portfolio tracker for One Piece TCG (cards, sealed boxes, graded slabs). Live price scraping from CardMarket and eBay with a Cloudflare-aware cookie pipeline that decrypts Chrome / Arc / Brave / Edge cookies on macOS and Windows via each platform's keychain. Offline self-contained HTML dashboard, iCloud sync, P&L per item, receipt management.
Three-module computer-vision system: image acquisition with noise removal, VGG16-based card recognition, and a Monte Carlo equity simulator. High recognition accuracy and realistic two-player simulation. Documented in the official UPM publication.
Multi-agent system that assists streamers with chat moderation. Blacklist-based banning, bad-language ratio analysis for timeouts, and a GUI for streamers and mods to review the automated decisions.
Group research project: complete data-center design for an online video-editing platform — rack layout, electrical plans, cooling and air-flow design. Matrícula de Honor.
Compiler for a JavaScript subset. Lexical, syntactic, and semantic analysers; symbol table; error recovery and warnings. Matrícula de Honor.
+ Earlier work
- Ecomobility — Semantic Web · Madrid bike + EV charging points published as RDF (OpenRefine, RML mappings) · Autumn 2022
- Reactify — React + Spotify API · Winter 2022
- Distributed Systems Broker — pub/sub broker in C, persistent subscriptions · Winter 2021/22
- Bank Fraud Detection Middleware — Java JMS, concurrent middleware · Winter 2021/22
- Personal Shell — C / Bash; lexer, parser, multi-process pipelines · Winter 2021
- Sokoban — Java MVC with XML level persistence · Spring 2022
- Black & White Filter — Assembly MC88110 · Winter 2020/21
Universidad Politécnica de Madrid · 2019 – 2023
B.S. Computer Science · GPA 8.56 / 10. Matrículas de Honor in Operating Systems, Compilers (Procesadores de Lenguajes), Semantic Web & Knowledge Graphs, Art of Programming, Prolog, Programming Project, Data Center Project.
Coursework: Algorithms & Data Structures · AI · Machine Learning · Distributed Systems · Middleware · Concurrency · Probability & Statistics · Computer Networks · Security · Numerical Algorithms · Competitive Programming · Quantum Computing.
Let's talk.
Not looking for a new role right now — but always up for a good conversation about onchain protocols, quantitative finance, applied ML, or anything you think I’d find interesting.