专栏名称: 九章算法
专业的北美IT求职经验分享、技术交流社区,帮助你找到好的IT工作。由硅谷顶尖IT企业工程师维护。提供专业的算法培训/面试咨询,官网 www.jiuzhang.com
目录
相关文章推荐
算法爱好者  ·  刚刚,OpenAI 上线 Deep ... ·  3 天前  
九章算法  ·  美国正在萎缩的行业!华人千万别碰! ·  6 天前  
九章算法  ·  疯狂给码农“砸钱”的公司!Top3完爆大厂! ·  4 天前  
算法爱好者  ·  o3-mini 碾压 DeepSeek ... ·  4 天前  
51好读  ›  专栏  ›  九章算法

Code Reviewer 太烦人?如何与之斗智斗勇

九章算法  · 公众号  · 算法  · 2018-02-01 08:10

正文


撰文 | April & Emma

编辑 | Shona

专栏 | 九章算法


在 Code Review 时经常会发生以下情况让程序员心烦:


  • 自己代码写的很好,但是 Code Reviewer 鸡蛋里挑骨头,无尽刁难

  • 无意义的争论。比如花一两个小时和并不如自己精通技术的 Code Reviewer 争论是否要使用隐式类型

  • 有些 Code Reviewer 根本不懂技术还居高临下,比如他们会说:“我闭着眼睛写的算法也能比你的高效。”


在这样的环境中,Code Review 渐渐演变得像是政治游戏里的对抗性活动,严重影响工作心情。那么这时我们该怎么做呢?


1

Code Review的初衷是什么?


在给出建议之前,我们先来了解一下 Code Review 的初衷是什么:


  • 发现程序的缺陷并找到更好的解决方案

  • 帮助团队成员统一编程风格,提高编程技能,促进知识共享

  • 激励开发人员提交更优质的代码


一个良好的 Code Review 过程有助于代码质量 ,有助于开发人员学习。 但也不乏会遇到一些恼人的Code Reviewer,在你什么都做完了之后才告诉你,你提交的程序中有些地方让他不爽,而且理由还特别 personal。遇到这样的 Code Reviewer,我们该如何从容应对呢?



2

如何应对Code Reviewer?


1
审视自己,提高自己


在遇到 Code Reviewer 提出意见时,思考以下两个问题:


  • 他的反馈真的有帮助吗?

  • 自己有没有改进空间?


如果回答是 yes,那么,认真改进自己。

如果 Code Reviewer 在 Review 过程中做了一些让你不舒服的事情,比如:


  • 居高临下或是嘲笑你。 建议忍受一下,因为在任何地方工作都会接触到一些令人讨厌的人,你要做的就是提高自己。


  • 吹毛求疵。 比如,code reviewer 说你注释第一个单词应该大写开头,但你觉得这种事情无所谓,是 Code Reviewer 在吹毛求疵,没事找事。但是以后你会发现,从整个项目、整个 Repo 乃至整个公司的角度看代码,这个小细节就会成为一个问题。


2
直截了当地提出你的反馈


如果你写的程序已经很完美没有太大的改进空间了,Code Reviewer 却因为你的代码风格而不断的唠叨;又或者你已经根据之前他们的反馈作出改进了,但他们不断的提出新的问题来“刁难”你,这时该怎么办?

直接点,告诉他们: 我可以接受你对我的建议,但是你的表达方式很让人不舒服,希望你一次把问题说清,不要再这样了。

他们对此可能会有两种反应:


  • 他们可能会接受你的反馈 ,然后改变自己的行为 如果是这样,那么问题就解决了,即使有时候可能过程不是那么的完美。


  • 如果他们不接受你的反馈 ,甚至说出:“做一个 nice 的人不在我的工作范围内。”那么这些代码审查者大概潜意识下觉得自己是 Gregory House 或 Linus Torvalds,即使他们没有半点成就。


如果发生了第二种情况,那么你就该采取点措施了。


3
远离烦人的 code reviewer


关于采取什么措施,提供以下几点建议:


  • 找双方都尊重的开发人员来决策

  • 重新从事一个不同的项目,不跟他在一个团队

  • 如果当前项目的不同部分由不同的人审查,可以选择从事当前项目的不同部分

  • 要求换人进行 Code Review


注意,采取措施时,如果没到万不得已的地步,理由最好不要是“和 Code Reviewer 处不来”。 你可以说,是因为对新项目感兴趣等。


如果你的管理人员够精明,他们会理解你真正的想法。一般管理人员都会支持你的做法,因为用这种方式解决,是员工为自己的问题提出解决方案,而不再需要让他们想办法为你解决问题。


而当发生你与Code Reviewer争论这种情况时,很多人都会找管理请求解决,这不是一个好主意。因为通常,管理人员也不懂技术,他们会因为要和你讨论一些技术问题而感到头疼。而且,管理人员和 Code Reviewer 处于相互依存的关系,所以当你向他们提出这个问题之后,他们一般只会对你表示同情。所以当年你与 Code Reviewer 争论时最好不要把管理人员加入进来。


♦♦♦♦♦

终极变态方案

让 Code Reviewer 觉得“你”更烦


这是一种比较消极的处理方式,但是到你被逼到万不得已的时候,可以考虑使用。只是,你可能多少需要担心以后在团队的人际关系问题。


  • Code Reviewer 大声?我也大声!

  • Code Reviewer 是错的!我是对的!


如果 Code Reviewer 大声指责你的错误,那你也大声和他争论:



这种性格的 Code Reviewer 很讨厌这种类型的对话, 所以不要给他们觉得自己是对的机会。大声指出,因为他们是 Code Reviewer ,你才不得不听他们的。


还有一种,就是 “找他们的错” ,研究他们所有的要求,他们所有的代码,以及他们提出的方法。然后努力学习,找他们的错误,等到 Code Review 时,用这些怼他们,尽可能的证明这个人说的话都是错的,让他尴尬。

当他们在你身上体会不到权利的满足感之后,他们可能就不太想刁难你了。


更多精彩内容
  • 回复“简历”,查看简历撰写指南,获取“简历模板”

  • 回复“冷冻期”,查看北美各大IT企业冷冻期信息和注意事项

  • 回复“Career”, 查看Caireer Fair 攻略 check list

  • 回复“薪资”,查看北美各大IT企业New Grades Engineer 薪资水平;

  • 回复“项目”,查看7-14天可以搞定的小项目推荐

  • 回复“评分”,查看系统设计评分指南

  • 回复“behavior”,查看behavior interview指南

  • 回复“晋升”,查看Engineer晋升机制







请到「今天看啥」查看全文