背景
在一家公司呆了两年了,作为工作十多年的程序员来说,真心感觉这两年时间是真的长,每天上班如上坟,度日如年。
21年入坑,接手了一个老项目,进去后发现项目几乎天天报错,每天群里bug满天飞,每天改完一个bug,一会群里又开始叫,每天都是晚上下班才有时间输出业务代码。开始还特别不习惯认真给运营看问题,修复问题;就这样呆了快一个半月,我天天忙成狗,周围同事却每天不慌不忙,到点下班。一天无意中跟周边同事闲聊,我说这项目代码这么差你们怎么度过来,他们一副若无其事的样子,一个平日走的比较近的同学悄悄告诉我,这边项目负责人都换了好几波了,当时真的快自闭了...
随着对业务的熟悉,代码看多后也就发现为毛项目负责人换了好几茬,下面的小伙伴却安然无恙!!!现在回想这可能是个惊天大计谋,这边项目成员就像约定好了似的,几乎他们负责的核心模块,其它人根本无法替代,所以老板没办法,系统不稳定只能拿负责人开刀,现在回想我居然能在这破地方带两年,我他喵fuck...
这真的是血泪史
今天就结合实际工作情况给大家介绍一下,在一个团队中是怎么变得不可取代的
1.业务代码中千万不要写注释,更加不用提文档了,不要看阅读者能够轻易看穿你的意图
2.方法越长越好,不要轻易拆方法,当一个方法超过500行之后,而且没有任何注释,没有人能轻易搞定这段代码,如果还是比较核心的功能,那么恭喜你,你的不可替代性就大大增强!
3.如果你是写Java那就太好了,能用Map,JSONObject前往不要定义实体,一个复杂的请求,从前端到后端,再到调用内部方法,外部依赖(越多越好),所有的参数传递或者返回值全部定义为Map,只要你能记住结构那就都不是问题,这种情况,最好还不要写文档,保持神秘,如果在核心链路上那就真该恭喜你了,你懂得!
4.很多人都会提到代码Review,一般的公司千万不要被唬住,按我的过往经验来看,大部分leader只关注你在的时候会不会出问题,只要保持第一版本抗住线上不出大的逻辑问题,那就基本通关;日常中即便leader管的比较严格也是有方法的哦,比如可以适当的刻意把问题描述的尽可能复杂,然后工作周期还要拼的短一点,表示你在很努力很敢节奏一副很想把需求做好的样子,真正review的时候给leader真诚的反馈,下个迭代我会把这些细节问题都优化掉的,测试已经全部覆盖了,逻辑是没有问题了,领导放心吧。只要这块代码真的核心,兄弟,日后你就是捅娄子了,leader也还是会有所忌惮的。看看我们这边小伙伴就做的足够好,要背锅的只能是领导!!!