27

一名合格的程序员应该是什么样子 - 沉默王二

 4 years ago
source link: https://www.cnblogs.com/qing-gee/p/11101054.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

一名合格的程序员应该是什么样子

6 月 25 号,母亲打来电话,说妹妹的高考成绩离二本线差 9 分。我听完随口扔了一句,“在我的意料之中。”因为她平时的成绩也就在二本线上下徘徊。

这句话挺伤人的,尤其是对于高考失利的妹妹来说,她听完我的话,立马就哭了起来,情绪非常激动,质问母亲为什么要打电话告诉我(玻璃心)。

我参加高考了两次,两次都离二本差了 6 分,最后不得已上了大专——当时也陷入了人生的低谷,情绪很低落。一路走来,能体会到学历对于一个人的重要性,尤其像我这种从农村走出来,缺乏生意头脑,不善言谈,急于改变命运的人。

后来,我通过培训正式进入了程序员的行业,自认为是一名合格的程序员吧——把本职工作做得很好,对得起自己的薪水,在生活与工作之间也找到了平衡点

鉴于我的“成功”——买了房、结了婚、生了娃、买了车、出了书,父母就打算让我妹也成为一名程序员。说实话,我也有这样的打算,还曾创作过《教妹学 Java》的系列文章。

程序员属于一个僧多粥少的群体,女性自然而然的会受到男性的照顾。因为在我做程序员的 8 年时间里,就无偿、自愿、主动地帮助过不少(此处不能用许多)程序媛。

不管怎么说,我是热爱“程序员”这个职业的,假如妹妹也有做程序员的意愿,那我这个做哥哥的就要给出 3 条真诚的建议了——这也是义不容辞的事情。

01、能够解决问题

我认为,作为一名合格的程序员,首先要具备的能力就是“阶段性”解决问题。

所谓的阶段性,指的是初级程序员解决初级问题,中级程序员解决中级问题,高级程序员解决高级问题。

记得有一名小伙伴在知识星球提问题说,“二哥,我有不到 1 年的工作经验,领导总让我看源码去解决问题,我看得头大,有什么好的建议吗?”

我只能安慰这名小伙伴说,“你的领导不是一名称职的领导啊。”看源码是一件好事,这是毋庸置疑的,但如果强迫 1 年工作经验不到的程序员去看源码解决问题就属于强人所难了——天赋异禀的除外。

说实话,在我 8 年多的职业生涯中,很少通过看源码解决问题。当然了,你可以指责我不是一名优秀的程序员,我接受,因为我的首要目标是做一名合格的程序员。

合格的程序员,有自己解决问题的手段,比如我的手段就是:

1)找度娘。

2)找谷歌。

3)在博客园问题社区提问。

4)在 CSDN 论坛提问。

5)在 Stack Overflow 提问。

6)找同事帮忙。

7)找领导帮忙。

8)在大牛的群里提问。

实在是解决不了,也不要熬夜通宵,哭天喊地,回家踏踏实实地睡一觉,没准第二天一早就想到了解决办法。

你可能会觉得我这话很玄乎,但我时常有这种感觉,第二天睁开眼的时候,突然就有一个叫“答案”的东西慢慢地从天花板上飘落下来,然后我就伸出双手接住了它

怎么解释这种感觉呢?我也说不清楚,但有个英文单词似乎可以解释——“epiphany”,中文意思为“对事物真谛的顿悟”,我喜欢称之为“天启”(灵感来自于 X 战警)。

可以这么说,这 8 年来,我还没有遇到解决不了的问题(就是这么信誓旦旦)。随着年纪的增长、技术能力的提升,看源码也就不像年轻时那么痛苦——渐渐地,看源码成为了我解决问题最后的杀手锏。

02、一颗不是“玻璃”的心

不得不承认,年轻的时候,我的心非常非常的“玻璃”。把自己拿出来做例子,实在是情非得已啊。

把时间拨回到 7 年前,我当时还在苏州的一家日企工作。有一次,团队中的一名成员在使用 if 进行条件判断的时候,使用了 = 而不是 ==,导致程序出现了严重的 bug,而作为 Team Leader 的我竟然没有在 Review 和测试的时候检出这个“见不得人”的 bug。

领导在日本出差,被日本人骂的狗血喷头;而我,被领导的越洋电话骂的狗血喷头。当时气不过的我,躲在厕所委屈得流泪,还伴随着难以抑制的抽噎声。

当时的画面现在依然记忆犹新。

现在想想,真没啥好哭的,自己的确负有一定的责任,被领导骂一骂出出气,也是再正常不过的事了。但那时候的“玻璃心”经受不住批评,哭过之后还闹着要换部门。

我劝你们忍住别笑啊。

初入职场时,我们不被领导当众训斥的概率几乎为零。如果这时候玻璃心作怪的话,几乎会毁掉我们的职业生涯。我庆幸自己当时没有换部门,因为领导出差回来后,还特意请我吃了一顿大餐;后来涨薪的时候还特意照顾了一下。

作为一名程序员,我们要懂得自嘲、自黑,懂得释放自己的压力,我现在觉得,敢于称呼自己为“码农”、“IT 民工”的程序员特别可爱,特别有勇气。

如果是现在的我,再因为少个 = 被领导训斥的话,我就敢肆无忌惮地说:“领导大人请息怒!写个 bug 咋地啦,小王同学又不是故意的,我现在去改一下,马上再发布一个版本;另外,下次 Review 的时候我一定再仔细一点。”

领导没准还会被逗笑。你看,不是玻璃心多好啊。

03、乐于分享

首先说一下我为什么乐于分享的原因:

  • 作为知识的总结
  • 作为备忘录
  • 想帮助他人
  • 建立个人品牌

说句实在话,我已经分享了数百篇文章,但这些文章并没有给我带来金钱上的直接利益。我之所以还在坚持,是因为我觉得未来有一天,我可能因此挣到一些钱;假如还挣不到的话,我在分享的过程中已经自我升华了。

很多程序员不敢分享的原因也很简单:

  • 大牛已经分享过了
  • 分享出来会不会被喷
  • 技术深度不够
  • 没啥可分享的

再说句实在话,我在程序生涯的前 3 年时间里,也从来不分享。原因不外乎上面列的这几种。但当我从苏州回到洛阳后,自由时间一大把,没开始分享的那段时间里,除了打游戏就是看游戏攻略——游戏玩腻了,就觉得生活百无聊赖。

实在是不知道干啥,就开始读书,读完书,总觉得想说点啥,就开始在博客上分享读书笔记。写了一段时间后,竟然还有人阅读和评论;再加上公司也开始鼓励写博客(绩效奖),我就把工作当中解决 bug 的辛酸历程也分享了出来。

写着写着,我就发现了一个天大的好处:有些 bug 竟然在十天半月后重新跑出来吓我,但吓不着我了,因为之前的解决办法已经被我记下来了,按图索骥,轻松搞定。再也不用重新找解决办法,省掉大量的时间。

再写着写着,我发现写作水平也提高了(你可以翻看一下我以前写的文章,感受一下之前和现在之间的差距),所谓输出倒逼输入,技术功底也更扎实了,解决问题的知识库也更丰富了。如果稿费能再多点,就更完美了。

04、最后

我是一名极其普通的程序员,勉强算是合格,但和优秀的程序员相比,真的是自惭形秽。

但我总觉得自己身上有着某种特质,往好里说就是持之以恒的精神,尤其是在写作方面,我希望我的分享能够给你带来一点启发,那真是再好不过了。如果你真的从中得到了一点点益处,我会感到非常的高兴。

为了能够首尾相应,我还得透露一点我妹妹最新的情况,究竟是选择复读,还是上大专成为一名程序员(重复我当年的老路),她还在犹豫当中。如果你有更好的建议,还请和我交流交流。

微信扫描左侧二维码,关注作者的微信公众号:「沉默王二
后台回复“666”即可获取一份 500G 的高清教学视频,并且已经分门别类,可以按需下载,速去!

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
如果觉得还有帮助的话,可以点一下右下角的【推荐】。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK