How to be a senior Solidity Engineer
一、能够熟练完成常见功能开发
Solidity + Hardhat + Ethers
熟悉 Solidity 语法和数据结构,能使用 hardhat 完成智能合约的自动化测试、优化、部署、交互和 SDK 封装。
Openzipplin + Upgradeable
熟悉 Openzipplin 的所有库文件,能够完成可升级合约的部署和升级。
Smartcontract Apps
熟悉市面上主流的智能合约项目的实现:dex(uniswap、curve)、lend(conpound、aave)、skating、oracle(chainlink)、bridge,能完成经典项目的合约改写和部署。
二、达到技术深度
Inline Assembly + Gas Used
熟悉内联汇编,清楚智能合约执行过程的 GAS 消耗,能对智能合约做最大程度的 GAS 优化。
Solidity Compiler
熟悉 Solidity 编译成字节码的步骤,能根据 bytecode 反推出智能合约的执行逻辑。
Ethereum Virtual Machine
熟悉智能合约在 EVM 上执行的原理,能对区块链做 EVM 兼容。
Smartcontract Attack
熟悉市面上发生的智能合约攻击事件,对新出现的智能合约安全事件进行追踪,能对智能合约的从底层到业务上的安全风险进行评估和预防。
Maximal Extractable Value + Flashbots
熟悉 MEV 机制,了解 flashbots 等 MEV 提取工具,能够对链上交易策略进行规划。
三、关心技术进展
Solidity Update
熟悉 Solidity 各个版本之间的区别,能跟进 Solidity 版本更新。
Ethereum Improvement Proposals
熟悉主流的 EIP 标准,能跟进 EIP 提案的进度,并撰写提案的分析。
原文:https://github.com/33357/smartcontract-apps/blob/main/Special/Dev.md