小马的世界

读书笔记-软件工程师指南【1-2】拥有你自己的职业 绩效评价和目标设定

下面的内容是我在作为一名程序员入职之前阅读的由Gergely Orosz写的The Software Engineer’s Guidebook。我将将阅读时得到的重要的信息总结成中文以供大家分享。

1.2 拥有你自己的职业

当我开始担任主管时,我惊讶地发现了以下几点:1. 许多程序员从未与主管进行过职业规划谈话。2. 有些人相对更容易接受帮助,通常清楚自己想要什么。3. 虽然我希望能够帮助所有人,但作为主管,我的时间有限。

因此,尽管他人想要帮助你,但由于种种原因,最终能够真正帮助到你的只有你自己。

  • 被视为一个“干得好的人”

首要任务是高质量地完成被分配的任务。高质量的任务完成包括确保开发的代码能够正常运行,增加新功能,发布新服务,推动组织发展。要成为一个有影响力的人,应该从深入了解团队的优先事项和业务规划开始。同时,让周围的人知道你的成绩也非常重要。程序员常常误以为只要自己完成了一项工作,主管、同事和团队就会自然知晓,但实际情况并非如此。你需要明确告知团队成员你的工作成果。如果你想要产生影响力,这一点更加重要。

  • 记录工作日志

也许你还能记得这周和上周你完成了哪些工作。但半年前呢?一年前呢?

举个例子:到年底时,如果没有记录工作日志,要总结自己的工作贡献就会变得非常困难。或者当主管准备对你进行评估并要求你提交一年的工作总结时,如果没有工作日志,回想起所有工作将会十分费力。建议每周记录重要工作内容,包括重大的代码更改、代码审查、设计文档、会议讨论和计划、帮助他人以及事后反思等。前Stripe员工Julia Evans把这个叫做“自吹文档”。

这类文档很有用,不只为了记录你的工作表现也为了记录你到底做了多少。下面是一个例子。

Current

  • Project Zeno
    • Called meeting on the project being at risk / cutting scope

Week of 6 Dec

  • Project Zeno
    • Code T43322, T 4331
    • First time sending out Thanos update email.
  • Helping out the Chat team
    • Lots of chat support with Val and Nick
    • 7pm call with SF the last minute
  • Design proposal: retire proxies, Will circulate it next week
  • Emergency version bump: T23232
  • Sue: paired 4x this week
  • 1:1 with PM: proposed adding tech debt removal to the backlog. Added J43239.

Week of 30 Nov

  • Project Zeno
    • Finished the design doc
    • Code: T23444(refactoring the controllers) T34323, T42321
    • Code reviews: many! A notable one is T43242(agreeing on approach to refactor)
  • Postmortem for Zeus outage
  • First mentoring session with Sue.
  • 2x interviews and 1 hire.
  • Cleaned up the Tech Debt project.

在记录工作日志的同时,需要根据任务的优先级和工作日志的填充情况来适时地拒绝一些工作。

有些人可能会问:是否会觉得记录工作日志很奇怪?

刚开始写工作日志时,我感到很尴尬。但成为主管后,我的看法有所改变。有人认为记录工作日志是为了夸耀自己的成就,这是不正确的。作为程序员,我们记录的工作内容都是真实的,没什么好遮掩的。起初写工作日志时或许觉得很傻,而且每天都要花时间,但实际上这是非常值得的。

  • 询问和给予反馈

成为一名专业程序员,获得同事的反馈是必不可少的。通过了解哪些方面做得好,哪些方面还有待提升,你可以不断成长。作为程序员,获取反馈可以有多种方式,也许你已经在使用其中一些了:

  1. 代码审查:让其他人仔细检查和审阅你的代码,他们会给出宝贵的反馈。
  2. 点子和建议:与同事讨论产品或项目的功能和想法,询问他们的意见和建议。
  3. 设计文档:如果你的公司或团队使用设计文档,可以从中获得项目实现方案的反馈。
  4. 同事绩效评估:通过同事的评估了解自己需要改进和加强的地方。通过这些途径,你能够更好地改进自己的技能,不断进步。

在交流中,需要注意到人们通常不会主动提出建议和反馈,除非被询问。因此,积极询问意见是非常有效的方法。

此外,给予他人必要的反馈也是很有益处的。1. 赞扬他人的优秀工作:如果你发现别人有出色且扎实的工作,一定要毫不吝啬地表达赞美。告诉他们你欣赏他们的哪些地方。在代码审查中也可以加入你的正面评价。如果你不太喜欢他们的工作,在审查中也要坦诚告知,最新的功能已经经过了充分的改进。

其中一个重要的注意点是要明确指出你欣赏的具体方面。像“做得好”、“干得好”这样的话太过笼统。因此要清楚地表明你欣赏的具体地方,以及原因是什么。

不要只说表面上的正面评价。应该坦诚地告诉别人,如果你对这份工作不满意也要毫不隐瞒地提出。虚假的赞美对任何人都不利。

当需要提出负面评价时,通常会感到困难,因为我们只是想评论工作表现,而不是攻击个人。以下是一些建议,可以尽量减少误解的可能性:

  1. 强调你在这一情况下观察到的问题及其影响。
  2. 避免使用“你应该这样做”。除非你是对方上级,尽量避免指责对方应该怎么做。更好的做法是帮助对方提出解决方案,或者暗示你可能有不同的见解。
  3. 直接面对对方,给出建设性的负面反馈。这样可以根据对方的反应来判断是否得体,避免误解。
  4. 从对方的角度出发:站在对方立场考虑,提出对方容易接受的意见和反馈。
  5. 强调你的意见只是建议,对方可以忽略。因为你不是对方的上级,所以这只是一个小小的建议。对方当然可以选择不采纳。
  6. 以积极的方式结束交流,并感谢对方倾听你的想法

1.3 绩效审阅

对于许多大型企业和一些中小型企业而言,绩效评估至关重要,因为它直接影响着你未来的升职和薪资调整。幸运的是,通常有很多方法可以提升绩效评估结果。然而,到最后关头,可做的改进空间就相对较少了。因此,提前开始准备很关键。

  • 早点开始,获取上下文并且设定目标

在工作中取得成功的关键是早早地了解上下文并设定目标。每个公司都有独特的文化和价值观,了解在你的工作场所中什么被鼓励,什么至关重要是至关重要的。首要之事是明确上下文,确定你应该追求的成功标准。

要识别并理解最重要的因素,需要知道你的团队和同事最关心的事情。升职加薪的关键点就在这里。为此,首先要了解团队的目标以及你的工作如何与这些目标相关。向主管询问也是一个很好的起点,了解他们个人的目标以及对他们来说何为关键。对团队和主管有更多了解将有助于你更好地融入团队。此外,向团队中的资深成员请教,聆听公司领导和执行官的讲话,了解公司目标与个人目标之间的关系,寻求有影响力的人的建议也是很重要的。同时要了解绩效评估系统的运作方式。

有几种不同类型的绩效评价系统:

  1. 非结构化/临时性评价:在某些公司中,经理们会对员工绩效进行评估,但评价缺乏真正的结构和规律性。通常情况下,经理会不定期地给予一些反馈,比如在宣布加薪时。这种情况在小公司中比较常见,对绩效评估的重视程度较低。优点是员工不需要过分担心,也不用花费太多时间。缺点是员工的评级很大程度上取决于经理对其个人的看法。
  2. 主管输入和反馈评价:这种评价方式在很多情况下是结构化的。比如,员工可能会有一个简要的职责期望文件。审查过程包括主管给予的反馈。在这种评价系统下,主管了解员工的工作很重要,通过和主管建立良好关系,员工也更有可能得到更好的评价结果。
  3. 基于同事评价的评价系统:通常是同事之间相互进行评价,尤其是同一个团队的成员。
  4. 正式的重要评价过程:许多大型科技公司和一些后期阶段的初创企业采用更加繁重的流程来避免常见的偏见。在这种设置中,员工需要为同事写反馈,进行自我评估,而经理会根据这些反馈撰写书面评估。这个流程的优点是员工通常会得到具体的反馈。缺点是需要投入大量时间和精力。

在做绩效评估时,有几个重要的注意事项需要牢记:

  1. 最终决定权通常在你的主管手中,但最好明确一下具体情况。
  2. 绩效评价的主要输入来自于谁?可能是你的同事也可能只有你的主管,这取决于不同的评价系统。
  3. 评价通常在何时进行?关键日期是什么?对于使用结构化评价的公司,通常会设定截止日期进行同事之间的相互评估。
  4. 如何确保公正的绩效评估?建议与团队内外经验丰富的同事交流,他们可能会提供建议,帮助您促进或避免不公正的评价。
  • 与你的主管讨论你的目标

设定目标时需要全面考虑背景信息。有时候,你的目标需要与公司目标、团队目标以及主管目标相一致。同时,也要考虑他们对你的支持程度。

向主管介绍你的目标,并征求他们的反馈。如果有导师,也可以和他们分享一下。询问他们对目标有何想法,他们更偏好哪种类型的目标,有哪些方面可能被忽略了,以及他们有哪些建议。

  • 与你的主管达成共同的目标

要让你的主管站在你这边,一个重要的方法是确保他们认可你的目标。因此,确保你的目标是可以得到你的经理支持的,并且要确保这些目标已经被记录下来。当你成功实现每个目标时,这是一个很好的机会,你可以向你的主管寻求对你工作的反馈。