Complete Hiring Guide
Everything You Need to Know
Smart contract development is not generic software development on a new platform. The irreversibility of on-chain state creates a fundamentally different risk environment.
Technical Interview Questions (EVM/Solidity)
Level 1 — Should answer immediately:
- What is the checks-effects-interactions pattern and why is it required?
- What is the difference between `call`, `delegatecall`, and `staticcall`?
- What is a reentrancy attack and name one defense?
- What is the difference between `storage`, `memory`, and `calldata`?
Level 2 — Should answer after brief reflection:
- How does a transparent upgradeable proxy pattern work? What is the storage collision problem?
- What is a flash loan attack and what oracle design does it exploit?
- How does Foundry's fuzzing work and what kind of bugs does it catch?
- What is the difference between `tx.origin` and `msg.sender` and why does it matter for security?
Verifying Experience
Ask for:
Deployed mainnet contract addresses. Check them on Etherscan — verify they exist, are verified (source code visible), and have real transaction history. If they can't name a single mainnet deployment, their claimed experience is not production.
The audit report from a past project they worked on. They should be able to point you to a public audit report and discuss what findings were discovered and how they were remediated.
