@Lenciel

个人发展的北极星指标

目录

个人发展

个人的发展和企业的发展不同,它的目标是比较清晰的。

经常都会有同学问,「我怎么可以晋升」。

公司有明确公开的职级通道和晋升机制很重要。

提升基本功和认知,并且在工作中拿到结果,也很重要。

但我前两天弄好那个清单后,突然觉得,好像它太长了:如果我是一个专员,可能会觉得有点吓人。

当然,如果我们把写好诗当成目标,熟读三百首是一个最基本的要求。所以清单很长本身可能是没有太大问题的。

问题出在,「读完这个清单」也许并不是一个好的个人发展的指标。我最近在公司里折腾北极星指标,突然觉得,个人发展也可以有被一个精心挑选的北极星指标驱动。

好的北极星指标

按照我对北极星的理解,好的北极星指标的特点如下:

  • 它表达了愿景和价值主张,表征了我们认为做什么是有价值的。
  • 它是成功与否的引领性指标,能预测未来的结果,而不是反映过去的结果。
  • 它是可影响的,我们可以对输入要素做动作来影响它。
  • 它是可测量的,我们可以用数据甚至看板来追踪它。
  • 它是具体的而不是自嗨的指标。当它发生变化时,我们可以确信这种变化是有意义和有价值的,而不是一种实际上无法预测长期成功的东西ーー即使它的增加可以让团队自我感觉良好。

如果我们的目标是「在软件行业更有竞争力」,「晋级清单的完成度」是一个好的北极星指标吗?我觉得它是一个还算可以的指标,但是有两个大问题。

反映的主要是结果

别人整理的「晋级清单」,反映的是他们提炼的经验、知识和观点。你看之前不知道就不知道,你看了之后没有经过实践,可能还是没感觉,徒增一些焦虑而已:但你只有通过看的时候才知道自己知不知道,这时候已经是结果了。

如果你想在考试中得到 100 分,光看考 100 分的人的卷子(最终产出物)是不够的,真正有用的是搞明白他们是怎么学习的(有特定产出的原因)。

比较容易自嗨

把读完《唐诗三百首》作为成为诗人的主要标准显然是自嗨,在我们这个行业这个风险就更大了:软件领域的知识和技能是很容易过期的。认为自己把某个清单里面的东西撸一遍就能变厉害,多少有些刻舟求剑。因为那些清单里的东西,以及它们解决的问题,可能都变化了。

更好的指标

与其把重点放在学习其他人整理出来的清单上,我建议可以设定一个北极星指标是:

每周花费在有意识的深度工作状态下的时间

我们的工作就是解决问题,而等着我们解决的问题往往需要学习新的东西。获取这种知识,主要靠的是在深度工作状态下的投入时间。

深度工作

深度工作(Deep Work)的概念来自于 Deep Work: Rules for Focused Success in a Distracted World。作者认为在互联网时代,快速掌握困难事物的能力,以及在质量和速度方面达到精英水平的生产能力,是取得成功的两个核心能力。然后举例说明了深度工作是「知识工作者」(包括许多类型的工作,当然也包括软件开发)练就这两种能力并取得成功的关键因素。

务实的好建议

有很多高产的人有「独处」的需求。

荣格有自己的,马克·吐温有自己的木屋。费曼不做任何行政工作,唐纳德·克努斯只收纸质邮件,希格斯拒绝使用计算机。伍迪·艾伦编剧和导演了 44 部电影,获得了 23 项奥斯卡提名,他的秘诀之一是只用那台 SM3 手动打字机。

这个单子如果你愿意可以不断加长。

但是另一方面,我们的社会却因为互联网特别是移动互联网发生着巨大的变化:各种事情都很容易通过手机找上门来,夺走你的注意力;同时,公司里隔板都被拆除了,每个人随时走来走去进行交流被鼓励,更不用说越来越多的「钉钉」这样的应用让你永远下不了班。

这引发了很多层面的焦虑。有人从脑科学的角度研究技术对注意力的伤害;有人从哲学的角度说明人类变得浅薄的后果;但《Deep Work》没有从这两个角度切入。

它提出,首先,信息时代的经济依赖于快速变化的复杂系统,造成技术和技能的变化周期越来越短。为了在这样的经济中有价值,人类必须掌握快速学习复杂事物的能力,而这只能靠「深度工作」。

其次,数字革命的网络效应影响是双向的。 如果你能创造出一些有用的东西,那么它所能接触到的受众(例如,雇主或客户)基本上是无限的——这极大地放大了你的回报。 另一方面,如果你制作的东西很普通,那么你就有麻烦了,因为你的观众很容易在网上找到更好的替代品。无论你是做什么行业,要想取得成功,你必须创造出更好的东西,而这只能靠「深度工作」。

换句话说,在信息时代的经济中,「深度工作」并不是唯一有价值的技能,但随着大量的机械重复的工作被机器取代,更多的人从计件工作转向知识工作者,没有这项能力的人处境将会越来越艰难——只不过大多数人还没有认识到这一点。

找到你的模式

如果进入深度工作?每个人有不同的模式。我刚才提到的很多名字是通过类似于「修仙」的方式进行有意识的自我封闭。

比如拒绝使用电子邮件的克努斯在斯坦福的主页上写着这样的声明:

自从1990年1月1日我不再有电子邮件地址以来,我一直是一个快乐的人。 我从1975年就开始使用电子邮件了,在我看来15年的时间的电子邮件使用,对一个人的一生来说已经足够了。如果人们关心的生活表层的那些事情,电子邮件是一件美妙的事情。 但对我来说不是,我的角色是在事物的底层。我所做的事情需要长时间的学习和不间断的专注。

大部分人没有这些巨匠的地位,可以关起门来,不与圈子外任何人表达一句观点,也不做解释:哪怕对方有误解的时候也不解释。

所以有些人是采用一段一段的方法,比如荣格。每年他一进 Bollingen 塔,就进入了完全沉浸的状态,但是他的其余时间都在苏黎世度过。他在苏黎世的生活一点也不像修道: 他经营着一个繁忙的医院,经常和病人呆到深夜; 他是苏黎世咖啡馆文化的积极参与者; 他在大学里举办和参加了许多讲座。

这好像是很多大公司的 CEO 们的状态,你只需要把「苏黎世」改成北京,把塔改成什么书院啊、茶园啊、海滨小木屋就对上了。这种深度工作希望最小时间单位是至少一整天,因为他们在解决一些比较宏大甚至是开宗立派的问题。

对于大多数人,每天能够拿出 4 个小时进入深度工作的状态,就足够了。这是很多大公司高管的状态,并且我发现很多人通过用类似健身的方式来节奏化它的:比如养成一个每天早上 5 点钟起床跑完步洗了澡深度工作 4 个小时的习惯。

我自己,没到可以修仙的级别,也不会像偏执狂那样把自己关起来搞几天几夜。另外虽然我对养成一个节奏按时定点地进入深度工作状态很感兴趣,但我做不到:一方面,我的工作非常碎片化,加上我自己的兴趣爱好也不少,加剧了这种碎片化,造成我很难找到这样整块儿的时间。另一方面,更重要的是,保持一个「好习惯」是很耗精力的。从小到大,即便是在足球队,我都没有连续撸铁超过三天,我会觉得枯燥。对我来说,保持习惯会耗尽深度工作需要的有限的精力。

但是,经过了长期的刻意的练习,我感觉我好像能够比较快地进入深度工作的状态。无论在飞机上,开放工作区,还是在家里,只要我戴上耳机,就能进入这种状态(但我还是偏爱四下无人的夜里)。所以,我大概也修成了一种仙,只不过是浪味仙。

不用干得那么辛苦

了解这个指标我觉得对国内的互联网行业最大的收益在于,也许我们不用干得那么苦。

从去年的 996 的讨论开始,我就在想,为什么国内互联网公司要这样加班,最近我又看到了一个采访脱不花的稿子

竞争的激烈等等当然是原因,但是我自己有很多时候觉得还掺着别的问题。

比如,有很多人好像只要可以不费脑子,怎么忙都接受。

再比如,有时候由于缺乏明确的指标来说明什么是工作中的生产力体现和价值体现,许多知识工作者转向通过时间来体现价值:996 就是一个典型。

我觉得,如果你是一个职业生涯早期的软件从业者,可以尝试记录一下你花在深入工作上的时间,因为没有测量的东西都是没法改进的。这会让你专注于一个非常好的北极星指标,来衡量你的成长。

两个同样基础的工程师,在今天拥有完全相同的技能。 如果第一个软件开发人员每周花 4 个小时做深度工作,而第二个软件开发人员每周花 15 个小时做深度工作,不用多久,他们的成长轨迹将大不相同。

如果你的公司让你没有那么多时间做深度工作,Hmmm…

晋级技术专家的清单

目录

「技术专家」是什么

最近公司开始整理职级通道。

大部分人上班其实就为两个东西在拼:职级和绩效。前面这个说明你的段位,决定了你的基本薪资(base 部分),后门这个说明你的表现,决定了你的浮动薪资(年终奖或者绩效等等)。

虽然结果的衡量主要看收入1,但它们显然不仅仅是钱的问题。

国内大部分企业的职级是乱套的,相对来说,外企做得早一点,所以一般会规整一点2。各个公司的职级发展到今天,已经逐渐标准化并且有了换算公式,你可以在levels.fyi上随时比较它们的要求和收入。

在国内离这样的标准和公开还有差距,只有一些坊间流传的匹配方式,并且大厂的职级这两年也在做一些优化。但靠着一线二线大公司牵头,产品研发运营等等岗位好像也是有了一个基本标准化的职级了。

本文所说的「技术专家」,主要是指软件工程师(包含开发、测试、运维等,但主要偏开发):

  • 在专业领域,对自己所从事的职业具备一定的前瞻的了解,在某个方面有独到见解,对公司关于此方面的技术或管理产生影响;
  • 对于复杂问题的解决有自己的套路,对于问题的识别、优先级分配见解尤其有影响力,善于寻求资源解决问题;也常常因为对于工作的熟练而有创新的办法,表现出解决问题的能力;
  • 可以带小团队,可以独立领导跨部门的项目;能够培训和教导新进员工;
  • 在圈子里有点名气。

对于国内公司,大概对标阿里的 P7 或者腾讯的 T3.1-3.2,如果在外企,则对标 Senior 以上(Staff 或者 Principle)。

没有菜谱只是品味

没有一个可以被所有人复制的成为技术专家的「菜谱」:你只需要打点计时,添油加醋,事情就成了。

你可能需要一些好的规划和好的习惯,但更多还是来自于大量地练习。

练习通常是从模仿开始的。我希望你的心态是让自己成为一个顶级的诗人,而我要干的主要是做个《唐诗三百首》的集子,作为你鉴赏和模仿的起点:好的品味是成功的一半。

另外,鉴于国内分享交流的意愿和系统思考的习惯等等原因,我列出的大部分都是英文的内容。紫荆吴彦祖说除开唐诗宋词其他的书都不要看中文的,我大体上是同意的,特别是在我们讨论的这个领域。

你的圈子

软件开发在技术层面外,主要是一个社会工程(Social Engineering),不是大英雄们躲在车库改变世界的工作。你获取再多的行业信息,读再多的书或者博客,参加再多的会议买再多的极客时间(霍老板不要打我),都没有你和谁一起工作,被什么样的人指导和影响重要。

如果你每周只有一个小时可以用来在职业发展的层面提高自己,滚出房间,约那些比你优秀的人聊聊

基本功

有一些更基本的东西,包括计算机的体系结构、数据库等等,就不在这里罗列了,默认你从入行干到现在这些都已经掌握了。

经典论文

很多人从学校毕业之后就不看论文了,有些工程师会在工作需要的时候,看一些特别经典的论文。我自己的感受是如果时间有限,读一篇高质量的论文,比读完某本书的一些段落要有意义得多。我是 ACM 的付费用户就因为它有类似于 ACM SIGOPS Hall of Fame Award list 这样的精选集,Papers We Love也是一个找论文翻翻的好地方, Adrian Colyer 的 the morning paper也值得订阅。

下面这些是我觉得在这个分布式的时代从事软件行业一定要读的论文3

书籍

论文、博客、讲座等等往往面向某个具体问题的解决。涉及到方法论或者体系化的知识,一般还得看书。下面这些是我觉得特别有用的,但是如果你还觉得不够,你在网上应该可以找到很多别的书单:

认知

技术专家做什么

知道这个角色究竟是干什么工作的,是很有帮助的,有个专门的网站请一些优秀的工程师进行分享,此外下面的这些也不错:

如果成为技术专家

看看别人是怎么规划和发展的:

实操

当你有了技术专家的基本功和认知,在实际工作中怎么干:

这里有这么多内容,看起来有一些吓人。但是相信我,如果你带着问题去读这些东西,它们比大部分的材料都要有趣。

  1. 在这个问题上,让老板骗你或者自己骗自己都是不对的。不要被老板们夸你的话搞膨胀了,也不要太关注自己的 title 是不是响亮。他付给你的报酬,你在市场里的价位,才说明你真实的段位。 

  2. 我觉得做得不太好的地方就是把 「Principal」 翻译成「首席」,搞得一个公司两三百个首席工程师,首席架构师。 

  3. 读它们之前你可以先读读 Peter Klein 的《如何读学术文章》或者 Keshav 的 《怎么读论文》。