Smart contract & AI engineer. I build, test and deploy secure, production-ready smart contracts and LLM agents, from the Solidity all the way to the agent that uses it on-chain.
- π Certified: Cyfrin Updraft SSCD+ (my Cyfrin profile)
- βοΈ Smart contracts: Solidity and Foundry, from design through unit, fuzz, invariant and fork tests to multi-chain deployment
- π‘οΈ Security first: checks-effects-interactions, reentrancy guards, access control, oracle staleness checks, written threat models
- π€ LLM agents: LangChain agents and tools that read chain data and prepare transactions, with guardrails so the model can't overspend
- π Shipping: deploy scripts, CI, FastAPI backends and React frontends around the contracts
| Area | What I've built with |
|---|---|
| Account abstraction | ERC-4337 (EntryPoint, UserOperations, bundling), ERC-7579 modular accounts, zkSync native account abstraction |
| DeFi | Uniswap V2 & V3, PancakeSwap, overcollateralized stablecoins with liquidations, rebasing tokens |
| Oracles & cross-chain | Chainlink Price Feeds, VRF, Automation and CCIP |
| Tokens | ERC-20, ERC-721, airdrops with Merkle proofs |
| Signatures & identity | EIP-712, ECDSA, Sign-In with Ethereum (SIWE), ERC-8004 Trustless Agents |
| Contract patterns | UUPS upgradeable proxies, EIP-1167 minimal clones, OpenZeppelin Governor + Timelock |
| Chains | Ethereum, Arbitrum, Base, BNB Chain, zkSync, Sepolia |
SessionHandler Protocol: agentic wallet infrastructure
Each user gets a smart wallet that an AI assistant runs from plain-language requests: sending, swapping, adding liquidity. The user keeps the root key, and the contracts, not the AI, decide what is allowed. Every transaction is checked against a daily US-dollar spending cap priced by Chainlink.
- ERC-4337 smart account + ERC-7579 spending-limit hook, with oracle, factory, registry and treasury contracts
- Unit, invariant and fork tests against live Ethereum, Arbitrum, Base and BNB Chain state
- LangChain agent, FastAPI backend, React web app and a Telegram bot on top
Denari Stablecoin: USD-pegged stablecoin
An algorithmic ERC-20 stablecoin backed by outside crypto collateral. Users deposit collateral and mint Denari. A health factor priced by Chainlink keeps every position overcollateralized, and anyone can liquidate a position that falls below it.
Solidity Chainlink Price Feeds OpenZeppelin invariant fuzz testing
Merkle Airdrop: gas-efficient token airdrop
Eligible addresses are stored as one Merkle root instead of a list, and each claimer proves their place in it. Claims carry an EIP-712 signature, so someone else can pay the gas for a claim without being able to redirect it.
Merkle proofs EIP-712 ECDSA SafeERC20
Crypto Lottery: provably fair raffle
Players buy in, and Chainlink Automation triggers the draw on a schedule. Chainlink VRF supplies randomness nobody can predict or rig. Tested with unit and integration suites.
Chainlink VRF Chainlink Automation unit + integration tests
Smart Election: NFT-gated voting
One NFT, one vote. Covers candidate registration, a fixed voting window, double-vote protection and on-chain tie detection.
ERC-721 OpenZeppelin time-based testing
FundMe: crowdfunding with a USD minimum
Contributions are priced in US dollars through a Chainlink feed, so the minimum holds whatever ETH does. The Foundry test suite includes zkSync-specific checks.
Chainlink Price Feeds zkSync Foundry scripts
LangChain tools that turn on-chain actions into execution plans. A normal wallet can sign them, or a smart wallet can batch them.
| Package | What it does | |
|---|---|---|
| langchain-erc8004 | ERC-8004 "Trustless Agents" registries: agent identity, reputation and validation | |
| langchain-erc20 | ERC-20 balances, allowances, transfers, approvals, and native wrap/unwrap | |
| langchain-uniswap-v2 | Query Uniswap V2 pools and build swaps on any EVM chain |
| Project | What it is |
|---|---|
| ai-tool-platform | AI assistants that chat over live web data, Wikipedia and your own documents |
| lead-marketer | Finds a company's employees on LinkedIn and drafts personal sales messages with an LLM |
| Arbot | Finds arbitrage opportunities across crypto exchanges |
| Trade-Accountant | Matches buy and sell orders across exchanges and works out the trading balance |


