工作态度

  1. 积极、主动,不是自己负责的模块也需要多了解熟悉
  2. 沟通很重要,多主动和领导和同事沟通自己的想法,多讨论各自的理解
  3. 业务上多思考需要完善和提效的部分,技术上多思考优化和提升性能的部分
  4. 及时总结,完成的任务及时终结收获和感受

技术点方法论

  1. 这个技术点是干什么的,解决什么问题?
  2. 这个技术的特定是什么?
  3. 对比同类,这个技术的优缺点分析
  4. 通过对比和可以看出这个技术的应用场景分析
  5. 研究方法论,对这个技术需要解决的问题进行分析和扩展

熟悉项目方法论

  1. 系统的目的
  2. 系统的评价指标,量化系统的好坏
  3. 了解系统的难点、挑战点
  4. 熟悉现有项目的架构,表设计,学习如何抽象问题
  5. 评价系统的设计优缺点,如何优化

研究问题方法论

  1. 搜索文献综述,追寻问题的成因、发展、现状、难点
  2. 了解问题的架构,如何划分各个子部分问题
  3. 查文献资料,各个子问题的解决方案和优缺点
  4. 总结形成自我思考

问题思考法

  1. 对问题质疑,这个是不是一个真正的问题
  2. 对问题的来源分析
  3. 对问题的关键点分析
  4. 是否遇到类似问题,查看解决思路
  5. 搜索相关关键词,谷歌
  6. 找资料解决问题
  7. 记录问题,和解决办法
  8. 总结问题

结论思考法

  1. 对于给定结论做一下剖析
  2. 分析出结论的关键字,明确含义
  3. 考察结论的成立条件和证据的正确性,考察逻辑合理性
  4. 对结论的理解,联想其相关性事物
  5. 对结论的理解,想一下该结论的反命题
  6. 复诉结论,分享给他人,加速学习效率

项目流程

  • 分析需求的合理性,分析其收益和风险,给需求定级
  • 认真研读需求文档,找出需求点,使用SMART分析、立项分析项目
  • 分析上下流影响,是否会打垮下游服务等问题,新增功能导致的数据结构或其他改变是否需要通知上游服务
  • 认真写设计文档,画出相关交互流程图,日志记录点
  • 技术选型,分析选用的理由
  • 认真写接口文档,画出流程图,考察细节,以及前后对接大体方案确定
  • 认真写测试文档,罗列所有测试项和测试目的以及观察指标
  • 编码,写单侧
  • 自己测试,完成测试文档的任务
  • 联调(分前后端的话)
  • 提测(如果有测试)
  • 上线后立刻回归测试,记录测试结果

数据侧流程

  • 先查询hive,查看结果是否符合预期
  • 少量执行几条,看效果,后期上线分批次10% 20% 50% 80% 100%
  • 考虑回滚策略,数据如何恢复
  • 考虑数据上线的影响

立项总结

  1. 确定目标
  2. 分析目标可达性
  3. 考察实现方法的多样性
  4. 列出所有计划,分析每一个方案的优缺点,及其对策

bug经验

  1. 出现bug先看日志,尽可能找日志
  2. 复现bug,查原因,dbug流程
  3. 半小时无果,问同事,看看是否有过类似问题

线上工作总结

  1. 线上出现问题立刻回滚,不要指望修复覆盖错误
  2. 上线后立刻回归验证
  3. 上线一台测试情况后再决定是否继续其他机器上线
  4. 上线失败,查看日志,如果没有则尝试线上重新启动服务看报错
  5. 敬畏生产环境

工作经验总结

  1. PREP汇报方法,先说结论在阐述理由举例说明再次强调结论
  2. 5W2H,对事情的提问原则
  3. SMART原则分析项目

阅读技术书籍总结

  1. 快速浏览一遍,了解书籍大体内容
  2. 再次细度一遍,思考相关细节点,做笔记整理
  3. 总结全书,画出知识图谱,思维导图
  4. 复习(相关记忆曲线时间结点)

决策方法论

  1. 对已有方案的优缺点分析
  2. 对目标的重要性紧迫性分析
  3. 按照方案对目标的重要性决策