About the Role
You will build the next generation of lending and borrowing systems that power Compound, working across protocol design, Solidity implementation, testing, security reviews, and production operations. This isn't a role focused on shipping isolated features — you'll help build systems that safeguard user funds, operate under adversarial conditions, and remain understandable, upgradeable, and resilient over time. You'll design contract architecture from product and risk requirements, build modular protocol components and tooling, write comprehensive tests, participate in audits and code reviews, model adversarial scenarios, and collaborate closely with product, risk, frontend, infrastructure, and external security partners.
Requirements
- 4+ years of professional software engineering experience, including 2+ years building EVM-based protocols or financial infrastructure using Solidity
- Demonstrated experience designing, deploying, and maintaining production smart contracts on an EVM-compatible chain
- Deep understanding of Solidity, the EVM, common smart contract vulnerabilities, upgrade and migration patterns, and secure contract design
- Strong hands-on experience with Foundry or equivalent testing frameworks, including fuzzing and invariant testing
- Experience building or contributing to DeFi protocols involving lending, borrowing, collateral, AMMs, vaults, liquidations, staking, or related financial primitives
- Strong understanding of ERC standards and token interface conventions
- Strong ability to reason about state machines, edge cases, numerical precision, access control, accounting invariants, and adversarial behavior
- High standards for code quality, documentation, testing, and peer review
- Comfort operating in a fast-moving, highly collaborative environment with significant individual ownership
- Strong written and verbal communication skills
- Demonstrated ability to effectively leverage AI-assisted development tools (e.g. ChatGPT, Claude, Cursor, GitHub Copilot, or similar) to accelerate software development, debugging, testing, documentation, and code reviews while maintaining high standards for code quality, security, and engineering judgment
Responsibilities
- Design, implement, and maintain secure Solidity smart contracts for lending, borrowing, collateral, liquidation, risk controls, accounting, and protocol governance
- Translate product, risk, and technical requirements into clear contract architecture and production-ready implementations
- Build modular protocol components and developer tooling that make the system easier to extend, test, monitor, and integrate
- Write comprehensive unit, integration, invariant, fuzz, and fork tests; identify edge cases before they reach production
- Participate in architecture reviews, code reviews, audit preparation, and remediation of security findings
- Model and simulate adversarial scenarios, including insolvencies, oracle failures, liquidation stress, permissioning failures, and upgrade risks
- Work closely with product, risk, frontend, infrastructure, and external security partners to ship coherent end-to-end protocol capabilities
- Improve engineering standards across documentation, deployment processes, monitoring, incident response, and operational runbooks