[2020 -> 2021] New World

2021.02.14

回望过去, 瞭望未来
今年是 写个人总结的 第二年, 2019-2020 的个人总结可以前往此处阅读此处

本来这篇文章大约在 21年 一月份放出的, 原本的标题是 <各种循环的再开始>, 副标题是 (循环的再开始不会是错误的重复延续), 但计划改不上变化, 循环已经不用再继续了.

如果一直注视着已来的, 反而会错过眼前的, 和 未来的. 过去的失败 都会成为 身体的一部分, 而无需过多萦绕. 而过去成功的, 已经随着时光的河流远去, 像那河底的石头一样沉淀. 人总是 要乐观 和 向前看, 并且 辩证 和 相信所相信的事物.

2020

2020 确实是 收获颇丰的一年, 各个方面似乎都摸到一点头绪

  • 项目管理方面, 从年初的 胎死腹中 的 MSC 到年末的 AntProj, 虽然 缺陷跟踪 && 项目文档 && APM 感知 等方面都逐渐完备, 但仍然在 项目时间安排 等的方面有很大缺陷. 虽然 这几个项目没有逃过最终关闭的命运, 不过看得到在向好的方向发展也挺满足的. 来年需要继续提升.
  • 技术认知(工程师) 方面, 这里分为两块, 上层建筑 和 下层基础 两部分
    • 上层建筑部分, 能感觉得到有所提升, 但是很难表达提升在哪. 以前觉得熟悉一个框架也算提升. 但现在并不这样觉得,也算一种提升. 笔者觉得现在技术提升的点, 在于能了解这个框架背后解决的那些事情, 以及它是如何解决的.说白了, 框架只不过是人为封装的一套规则, 熟悉框架只是熟悉这一套规则而已. 彼时的那种 框架狂热 只是一种雾里看花的 迷茫. 未来需要拨云见物, 认知上更加专注于 技术的本身本质, 所谓 本身 指的是对于技术细节的抽丝剥茧, 了解其最核心的技术细节, 例如 微服务框架的设计思路 和 核心源码阅读, 而不是停留在一些外围的代码阅读上, 要更加深入 本质, 去了解更有价值的部分, 假想加入是自己做会怎么设计的那些细节, 尽量可以去了解. 下面再举几个例子来表达上面的意思,
      • Prometheus 的一个例子, 笔者目前只了解了 PromQL 的实现 && Client 端的 一些Point, 大概了解 Prometheus 的整体实现. 但仅有这样是不够的, 笔者还需要去了解 Prometheus 的 TSDB 是如何实现的, 如数家珍的过一遍, 了解它的设计和细节, 去更加深入本质, 而非日复一日的在外围转悠, 这种深入的细节才是最有价值的部分, 也是可以给予自身价值, 以及 大幅提升自身技术视野的体验.
      • 再如简单点的例子, 例如 微服务框架, 了解它的结构设计, 或者 可拔插设计只是最基本的, 更深一步是例如 默认 组件的实现 等, 并且微服务框架 作为 日常工作中经常要魔改或者确认的部分, 需要尽量熟悉才是.
    • 下层基础 部分, 略有进步, 但是还是进步较小, 而上层建筑的感知提升离不开下层基础的扎实, 所以来年希望能逐步补全下层基础,
  • 软性能力方面, 这块比较难以描述, 比较零散, 毕竟不局限在计算机领域, 包括, 职业素养 && 沟通与协作 && 心理素质 之类, 来年在 自我管理知识管理 以及 产品思维 && 时间管理 方面需要提升, 除此之外, 沟通能力 特别注意.
    • 除了上面几点, 还有 团队管理 方面, 以前笔者是觉得 自己做好就行了, 一个人能做的挺好的, 但有个很现实的点在于, 人的一天只有 24 个小时, 即便再怎么强化时间管理, 一个人在一天能够完成的事情也是有限的. 那么如果想要完成更大的事情, 无可避免要进行团队协作, 进而就无可避免要接触团队管理, 即便不是做 Leader, 也至少要理解 Leader 为什么要这样做.

2020 总结

下面过一遍 2020 的 OKR

  • 专业知识补充 , 部分完成的只有 CSAPP 虚拟内存 部分Go 部分实现

  • 书籍阅读, 坚持阅读100天 的挑战依旧没有完成, 已经读完一遍的书目如下, 和 定的目标仍有距离 (4/12), <人月神话>, <财务自由之路 [博多.舍费尔]> , <OKR 工作法> , <樊登读书法>

  • 课程, 今年也买了不少课, 目前还是没怎么看….明年需要尽量清掉一些…

  • 源码阅读

    • 已经能啃的动一些开源项目的代码. 发现看这种代码得先知道它是做什么的 , 怎么设计的, 架构是怎么样的, 然后再去看, 才能有体会. 不能为了看而看. 就像 看 论文的实现一样, 只看那段代码很难知道作者要做什么, 得读懂 那篇 Paper , 然后再去读代码就能比较在状态. Code is cheap, show me the talk :)
    • 另外就是 尽量挑自己感兴趣的模块去看, 不要想着全数通吃, 这在越往后越是不可能的事情, 并且很多代码其实看了也没啥价值…….
  • 博客等级, 博客在 Q4 基本是停摆的状态…. 有一些产出, 不过还不太够,

    • Articles (7/30)(算上废弃掉的稿件大概有 加起来 10 篇吧)
    • juejin (lv2/lv3)
  • 英文, 目前还是摸鱼的状态, 2021 会努力 出埃及记

2021 OKR

O1 达成可以完整 Handle 项目生命周期的 项目管理能力

笔者了解 项目管理能力 需要不断的练习和实操来达到提升, 但也希望通过 一些系统性的学习来提升效率

  • KR1 通过 PMP 考试 (p1)
    • 需要细读 和 精读 以及 理解教材, 这个考试拿证应该是不难的, 主要是设置一个小目标来学习 PMP 的教材
  • KR2 在不低于 80% 的得分率下, 通过 软考高级 信息系统项目管理师 考试 (p1)
    • 也是通过 考试来系统性的学习相关知识, 需要细读 和 精读 以及 理解教材.
    • 笔者在刚刚毕业那会儿, 去尝试考过 软考高级的系统架构设计师 考试, 上午的客观题 和下午的案例分析感觉都挺简单的, 在论文的环节有些困难…确实没有经验的话, 挺难掰出那篇论文.
  • KR3 把握机会, 多多练习

O2 达到 同等与 Ali P7 的综合认知

Ali P7 层级名称是 专家, 笔者认为 专家 的 综合认知 体现 在两个方面, 硬实力软实力, 其中 硬实力 又可以 体现 这四个方面

  • 硬实力
    • 方案设计
    • 对于现有软件和架构的了解(例如 开源软件 和 开源框架)
    • 下层基础知识的完备
    • 技术直觉

从硬实力的角度, 前面三者都无需太久的沉淀, 通过一些方法刻意练习即可,

  • 方案设计
    • 公司项目中磨练
    • 沙盘项目 或者 已有产品 来练习, 例如 如果是笔者来规划 Aliyun 的系统设计, 会怎么做, 然后去根据找得到的系统讲述, 来相互对照参考. 或者 想着将公司的某些系统重构, 然后与现有系统对比, 之后再换个脑子 去寻找这些系统设计中的缺陷. 类似于 GAN 里面的 Generator 和 判别器 的感觉
  • 对现有软件 和架构的了解
    • 需要看到足够深的地方, 例如如果公司采用 Consul 做服务发现, 那么笔者至少要对 Consul 的 生命周期时序 && 核心实现 && 代码结构 有所了解, 方便后续 出现问题快速确认 和 定位 以及 快速提出修改方案
  • 下层 基础知识的完备
    • 这里讲的不是 说记住那些零散的知识点, 而是融会贯通, 把这些零散的点串起来.
    • 主要还是啃书, 然后 在日常工作中 去体现
  • KR1 下面这些方向中, 完成对应的总结博文的方向 >= 2 (p0)

    • 操作系统方面
      • 操作系统原理
      • 计算机组成原理
      • *nix 高级编程
    • 编程语言方面
      • 编译原理
      • PL
      • GC
    • 网络方面
      • 计算机网络基础
      • 经典网络协议细节
      • *nix 网络基础
    • 其他
      • 密码学基础
      • 分布式算法原理
      • 经典算法
      • 数据库底层经典算法 和 设计原理
  • KR2 深入了解的系统/框架 数量 >= 3 (p0)

    • 备选的有如下
      • Go Micro v1 || v2 || v3(微服务框架)
      • golang/go (编程语言)
      • Prometheus (TSDB)
      • Consul (分布式 KV 数据库)
      • Kubernetes (容器编排工具)
      • Istio (服务网格)
      • Mixin Network Kernel (区块链分布式节点)
      • ETCD (分布式 KV 数据库)
  • KR3 学习的新编程语言 >= 1 , 并且使用新学习的编程语言完成一个 微服务框架 (p2)

    • 备选的有如下
      • Rust
      • C++
      • Common Lisp
      • Elixir
  • KR4 完成 方案设计练习 >=1 (p2)

  • KR5 使用 时间利用 追踪软件 进行时间管理, 量化时间使用 (推荐睡觉前记录一下一天的时间使用) (p0)

  • KR6 逐步形成 知识管理体系

  • KR7 完成一次 Ali 面试通过 并定级 P7 (p2)

    这个够呛, 不过既然 O 都这么写了, KR 里面没有个 定级 P7 总感觉少了些什么 23333

O3 handle 一个 5 人以内的 team

这是 软性能力 的综合表现. 而通常一个 Team Handle 不住的表现在于, 项目延期 && 离职率上升 && Bug 数量上升 , 总而言之就是 1+1 <2. 那么及格线就是 1+1 = 2.

  • KR1 在 一个 Q 的时间里, 项目稳步进行. (p1)

2021 KPI

书籍阅读

慢下来, 尽量总结和旁通, 并书写 阅读笔记 和 思维导图

  • 年书籍阅读量 >=16
  • 完成 阅读 1h 坚持 100 天 计划 (毕竟读完才能买 PS5)

课程

课程主要是在如下 几个平台, 极客时间 && 得到 , 也可以尝试 极客时间的 直播课 || 训练营. 另外以目前的英文水平, 在 2021 可以尝试看看一些英文 课程. 课程结束要完成 阅读笔记 和 思维导图

  • 完成的课程数量 >= 16

博客

输出不能停丫

  • Articles 的数量 >= 30

了解外面的世界 以及 被泼冷水

  • 大厂面试次数 >= 2

英文

六级试卷及格次数 >= 3

Last modified 2021.02.14