我这程序员路上的“偷师”秘籍—与我共事过的最聪明的开发人员教给我的几点经验

我这程序员路上的“偷师”秘籍

咱得坦白交代一件事儿。我搞编程这些年,一直没少干复制粘贴这事儿。

说实在的,就靠这招,我这码农生涯才顺顺当当走过来了。 在我待过的每个团队,我都眼巴巴盯着那些厉害的程序员,瞧他们咋干活。我从那些超牛公司里的大神那儿“偷师”,还跟我觉得简直是天才的人一起共事。

有个大神,自己创业搞了个公司,那公司老赚钱了,估值好几百万呢。还有个写了个超火的单元测试库,说不定你都听说过。再有一个,那可厉害,我要是搞出点啥不靠谱的东西,他当场就给我指出来。我从这些人身上各学了一手,就这么推着自己的职业生涯一路往前跑。 我这人运气还挺好。我住的地儿,那可是中国互联网的核心地带——北京中关村。就跟那磁铁似的,全国各地怀揣梦想、兜里有点小钱的技术宅,都往这儿扎堆。

不过呢,你不用非得靠运气。我就想着把我从这些人身上学到的东西,给大伙唠唠。这些经验让我从一个平庸的程序员里“杀”出来,说不定对你也有用。 你得先见过好的,才知道啥是差的。

在碰上这些大神程序员之前,我对自己职业发展的要求可低了。我30岁才学编程,有人肯雇我,我就美得不行了。当时就想着,只要不被炒鱿鱼,啥都行。我就想达到个平均水平,就这,还老是差那么一截。 那些水平不咋地的程序员,经常把这几句话挂嘴边:“在我电脑上能跑啊”“我也不知道咋回事,反正它就是能跑,别乱动啊”“我就负责写代码,业务咋回事我不懂”“我瞅着挺好的”。 说出来不怕你笑话,这些话我都说过。

就最后这句,差点让我丢了饭碗,这事儿咱一会儿再唠。 你可别像我似的,10年换了6份工作,才好不容易变成个比平均水平略强点的程序员。我从遇到的那些超牛的技术大神身上,总结出了3条经验,分享给你。

## “不拘小节”的大神

咱就叫他老王吧。这人,那可真是个天才。

怎么看出来的呢?我刚到公司第一天,跟老板还有技术总监一块出去吃饭,就瞅见这老王,直接用手抓着吃沙拉。完了,还跟老板说,自己累了,能不能早点回家。大中午的,他还在公司沙发上睡大觉。也就天才敢这么干,还不用担心被开除。

老王40岁的时候,从医学转行搞软件。我碰上他的时候,他都50多了。那会儿我做程序员都三年了,还觉得自己怎么着也算是个中级水平了吧。结果,大错特错。 我刚入职那两周,跟老王结对编程,这才发现自己就是个菜鸟。老王用他自己写的库,给我们做的功能写测试代码,那库是专门为我们用的编程框架写的。我呢,以前压根就没写过测试代码。

老王在终端和代码编辑器里,各种快捷键用得那叫一个溜,我还觉得学快捷键浪费时间,我就一门心思,只要程序能跑起来就行。 老王可看不上我这“只要能跑就行”的工作态度。他说,我要是不学会VS code的快捷键,让结对编程能顺畅点,他就不跟我一块干活。我要是写了个功能,没写测试,他直接给我打回去。我找他帮忙,他也不直接告诉我答案,就给我指个方向,让我自己去找问题。 虽说我们就一块工作了9个月,但是这段经历对我职业生涯的影响,那可太大了。

我学会了写测试的窍门,知道了把工具用熟有多重要,还明白了干活不能光图快,还得保证质量。 后来听说,老王自己创业了,搞了个软件公司,做得风生水起。我估计他现在吃沙拉,还是直接用手抓。

## “魔鬼”代码评审员

以前,一想到老陈要评审我的代码,我心里就直发怵。

每次他都能挑出十几条,甚至更多问题。有时候,他还会给出一个完全不一样的思路,而且每次都特别妙,我就纳闷:“我咋就想不到呢?” 后来我才知道,他对谁的代码都这么一丝不苟。要是某次评审,他就给我提了几条小意见,我都觉得特有成就感。

再看看我自己,以前评审别人代码的时候,就跟走过场似的,大笔一挥,“我看挺好的”,就这么糊弄过去了。 当时我们团队里可都是资深程序员,我就觉着,他们肯定都把自己的活儿检查好了,评审就是个形式,对吧? 结果,有一天下午,我突然收到老陈在工作群里发来的消息:“嘿,哥们儿,有空聊聊不?”我一看,心里“咯噔”一下,心跳都加快了。 他跟我视频通话,一上来就问我,为啥通过了团队里一个资深同事的代码评审,然后一条一条给我指出那些明摆着的错误,还问我:“你咋就没看出来呢?”

那次对话,可太让我难堪了,我尴尬得脚趾都能抠出三室一厅。不过,他说得确实在理。我连最基本的工作都没做好,差点就把有问题的代码发布上线了,要是真那样,软件非得崩溃不可,客户不得把我们骂死。 我赶紧跟他道歉,还发誓,以后一定要成为团队里第二厉害的代码评审员。

我问他:“老陈,你到底咋做代码评审的啊?” 老陈就跟我讲了他的方法:在看代码之前,先在自己电脑上把代码跑一遍,测试一下功能。要是代码都跑不起来,那还评审个啥。看完功能,再一行一行仔细看新写的代码,搞清楚到底加了些啥。碰上不明白的地方,就问清楚,别稀里糊涂的。要是代码改动比较大,就跟写代码的人当面聊聊,让他给讲讲。还有,评审工作一定要在早上刚开始工作的时候做,这样就不用在自己干活和评审别人代码之间来回切换思路了。

我一听,好家伙,这可比我之前那随便应付的评审复杂多了。我下定决心,以后就按这方法来,可不能再出这种岔子了。 到了年底评绩效的时候,好几个同事都夸我代码评审工作做得好,领导也专门表扬我,说我工作认真负责。我听了,心里那叫一个美,感觉自己可算干了件漂亮事儿。

## “务实派”领导

我之前在一家公司,碰上了领导老张,我们一块管理一个小开发团队。我当上工程经理后,终于有权决定团队本季度的技术方向了。

我当时可兴奋了,想着终于能用上那些我一直想试试的新技术了,像啥国内超火的Vue框架,还有TypeScript语言。我还打算把我几年前写的一个库好好重构一下,甚至琢磨着把容器编排技术Kubernetes也用上,感觉马上就要大干一场了。

我兴高采烈地把这计划拿给老张看,结果他就问了我一句:“你搞这些,到底有啥用啊?” 我一听,就开始跟他讲那些技术术语:“哎呀,老张,你看啊,用Vue搞前端开发,能大大提高开发效率,TypeScript能让代码更稳定,减少出错。还有啊,咱现在用的HTTP客户端,那NodeJS版本太老了,得升级,再搞个命令行工具,能让开发体验更好。”

老张听我说完,一脸无奈地说:“你说了一堆,我也没听明白。我就问你,这些对咱本季度的业务目标有啥帮助?能多挣钱还是咋的?” 我当时就愣住了,说实话,我还真没考虑过这事儿。 老张接着说:“咱在这公司,就是为了给公司赚钱。你搞这些新技术,要是对业务真有帮助,那行,要是没用,那不就是瞎折腾嘛。”

我一听,觉得老张说得太对了,我回去之后,赶紧跟产品团队的人聊,了解清楚公司下一季度真正需要的是什么。这一聊才发现,压根就不需要把网站加载速度提高那么零点几秒,反倒是有一些其他挺有意思的难题,等着我们去解决。

你看,我本来出发点是好的,就想把技术搞好,结果方向错了,没考虑到业务实际需求。

## 你想成为哪种人?

每个精彩的故事,都得有几个厉害的角色。在我做程序员的这些年,这几位就是我碰上的“贵人”。

我学了他们不少本事,把他们做事的方法、思考问题的方式,都用到我自己工作里。不得不说,效果还挺好。 我现在吃沙拉,还是老老实实用叉子。 你知道每个故事除了厉害角色,还得有啥吗?还得有个反面例子。

说不定在那些大神眼里,我就是那个反面教材。我以前写的代码乱糟糟的,干活还老是拖拖拉拉,一个功能得搞好久。 不过,我觉着这也没啥。不是有句话嘛,要是你在一个圈子里,觉得自己最牛,那你肯定进错圈子了。

这话说起来容易,做起来可难了。 从这几位大神身上,我总结出了这么几点:写代码得写测试,得清楚业务是咋回事,评审别人代码的时候,得认真负责。还有最重要的一点,就是别怕挑战,多跟比自己厉害的人待一块,跟他们学本事。这可是让自己在这行里出人头地的最快办法。

希望我这些经验,能对你有点帮助。要是你也想在编程这条路上混出个样儿来,不妨试试我说的这些。

说不定哪天,你也能成为别人眼里的大神呢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肉三

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值