### **0到1级:基础认知** **目标**:建立模块基础认知,掌握开发调试工具链 1. **架构学习** - 阅读文档核心概念(数据流、线程模型、关键接口) 2. **代码初探** - 使用gdb调试一个核心函数,并解释其调用栈 - 提交填空式代码报告 ``` 关键函数:________ 函数的作用:________ 发现的疑问:________ ``` 3. **运行验证** - 运行UT(ASAN),新增一个测试用例,并上库 - 修改现有测试用例输入值,观察结果变化 4. **问题定位** - 阅读模块定位手册,并绘制故障依赖关系图 **交付物**:代码报告、UT运行&上库报告、故障依赖关系图 ------ ### **1到2级:熟悉逻辑** **目标**:理解业务逻辑,掌握问题定位方法 1. **模拟问题分析**(替代实际Bug修复) - 分析历史Bug报告,编写假设性修复方案(无需提交代码) - 复现一个已知简单问题(如空指针崩溃) 2. **依赖分析** - 绘制模块依赖图(调用方/被调用方+协议类型) - 分析接口性能测试(关注QPS/RT) 3. **日志追踪** - 根据日志关键词定位一次完整请求链路 - 编写日志分析速查表(错误码→可能原因) **交付物**:Bug分析文档、模块依赖报告、性能分析报告、日志速查表 ------ ### **2到3级:深度掌握** **目标**:独立开发核心功能,解决复杂问题 1. **核心逻辑开发** - 参与模块的核心功能开发(如实现一个新特性),并记录开发过程。 2. **性能分析** - 使用`perf`分析模块性能热点。 - 分析性能瓶颈等历史问题,总结解决模式。 3. **架构改进** - 组织一次技术分享,讲解模块的架构设计和优化思路。 - 分析模块历史问题根因分类。 **交付物**:功能代码(通过审查)、性能报告、分享材料 ------ ### **3到4级:技术主导** **目标**:主导架构演进,把控技术方向 1. **系统级设计** - 主导或参与模块的技术创新项目(如引入新技术),并记录项目过程。 2. **架构分析** - 分析模块的历史技术决策,评估其成功或失败的原因。 - 根据限制条件分析性能的极限。 - 组织一次技术分享,展示模块的技术深度和未来方向。 **交付物**:代码(上库)、分析报告