## Key Responsibilities - Develop and audit Solidity smart contracts for lottery mechanics - Implement secure random number generation for winner selection - Build gas-optimized functions for ticket purchasing and prize distribution - Create admin functions for lottery operators (draw, refund, commission withdrawal) - Integrate OpenZeppelin security standards and access controls - Deploy and verify contracts on Polygon network - Collaborate with frontend team on Web3 integration
## Smart Contract Features You'll Build - **Ticket Management**: Purchase validation, quantity limits, price calculations - **Random Winner Selection**: Secure randomness using block hash and timestamp - **Prize Distribution**: Automated winnings calculation and withdrawal system - **Commission System**: Operator fee collection and withdrawal mechanisms - **Refund Logic**: Automatic refunds for expired draws - **Access Control**: Role-based permissions for operators and users - **Event Logging**: Comprehensive event emission for frontend integration
## Required Experience - **4+ years** Solidity development experience - **3+ years** smart contract deployment on mainnet - **Expert knowledge** of Ethereum/Polygon networks and gas optimization - **Production experience** with OpenZeppelin contracts and security patterns - **Strong understanding** of DeFi protocols and tokenomics - Experience with Thirdweb or similar Web3 development frameworks - Knowledge of smart contract testing and auditing practices
## Technical Requirements - Write secure, gas-efficient Solidity code following best practices - Implement proper access controls and security modifiers - Handle edge cases and error conditions gracefully - Optimize contract size and gas consumption - Write comprehensive unit and integration tests - Document contract functions and deployment procedures - Conduct security reviews and vulnerability assessments