作为一名程序员,不知道你是否考虑过这个问题:“你想成为什么级别的程序员?”假如你还没有考虑过,那真的是该闭上眼睛,用力地想一想了。

这个问题并不好回答,因为它多少有些严肃。假如我要问你:“你最喜欢的书是什么?”,虽然也有一点点严肃,但你没准会不假思索地回答:“《平凡的世界》。”这两种问题的难易指数显然不在一个等量级上。

但即便是这个问题你觉得很难回答,也应该好好地思考一下,为了你自己。

“也许我想在未来五年内成为一名优秀的程序员吧!”你也许会这样想,但这样的回答太泛泛而谈了。那么我就来谈谈,在我接触的程序员当中,都有哪些级别。

01、烂的程序员

在程序员前面加一个“烂”字多少有些令人难以接受(也可能会伤害到某些玻璃心的人),但不可否认的是,我身边的确有几个这种级别的程序员。

“你怎么能把我踢出群呢?我不就是问了几个入门的问题嘛,咋地啦?”

我遇到过几次这样的情况,一些简单到令人发指的问题,一个月前在群里面问,一个月后还在群里面问,没有丝毫的进步——我只能忍痛把他踢了。

比如说“MySQL 安装一直失败,怎么办啊,大神?”,你别笑,我还远程替他解决过(免费的)。结果第二个月的时候,他又问:“MySQL 一直远程连接失败,怎么办啊,大神?”

说实在的,我不是大神。但我真的快气炸了,不过还是忍着脾气安慰他说:“兄弟,你可以参照我之前写的这篇文章(认真地翻看以前的博客,找到链接地址),说得很详细。”

在我参加工作的前三年里,也遇到过类似的情景:“兄弟,你这个接口写得有点问题啊…”没等我说完,他就急不可耐地抢着说:“兄弟,明明是你文档写得有问题,好不好?”说完还顺带翻个白眼。

“兄弟,你别急嘛,等我说完嘛…”
“有啥好说的,你先去把文档改过来。”

对于这种级别的程序员,我觉得没有什么值得同情的。人是要进步的,假如一直拿小白自居或者推卸责任来掩饰自己的不思进取,那真的可以考虑换一个职业了。

02、普通的程序员

这种级别的程序员基本上能够应付一般的编程工作,比如说我,大概就属于这一种。

我身上没有任何的“极客”精神,不喜欢捣腾时髦的技术,不喜欢读高深枯燥的理论书籍,比如说《算法导论》。

我研究某项技术的出发点,就是为了满足工作的需求。公司需要我研究 SQL,我就去研究;公司需要我研究 Ruby,我就去研究;公司需要研究 Flex,我就去研究;公司需要我研究 JavaScript,我就去研究…

假如某项技术用不到的话,我绝不会主动地去研究;比如说 Docker、Vue、Python 等等等等。因为技术是学不完的,永远也学不完!单纯一门 Java,如果要成神的话,估计得学上好几年吧,以我的天赋。

可能有人会较真地建议,“勤能补拙啊,你多花点时间,技多不压身啊!”

没错,可我觉得自己学的技术已经够多了,足够胜任我的工作了;对于现阶段的我,关注点应该是写更多优质的文章,并且要学会运营,让“沉默王二”这个星星之火燎更多的原。

普通程序员不应该不被尊重,人贵有自知之明啊。缺乏天赋并不是什么大不了的事情,重要的是要懂得扬长避短,把自己这把并不锋利的武器发挥得淋淋尽致。

03、优秀的程序员

这种级别的程序员总能在工作当中游刃有余,并且能够和同事们打成一片(非鼻青脸肿那种)。我身边这种程序员还是蛮多的,他们热爱编程,并且受人尊重。当他们要完成某项任务时,交付的产物总能超出人的预期。

很荣幸,我曾和他们一起相处过。

举其中的一个例子。我有一位领导,也可以说是师傅吧,大家都亲切地叫他老潘。我师傅工作起来非常地投入,Review 的时候,能通过肉眼看出来一些非常细微的刻度偏移(那时候我们常用 Flex 做一些 Chart 图的画面),每逢这个时候,我们总调侃说:“潘老大,你那副眼镜上是不是装有隐形刻度尺啊!”。

他这种细心的习惯你不得不服。每次他让我做个 Excel,我前前后后检查足足有三遍,以为没有纰漏了就小心翼翼地传给他,等待他的表扬。可他不一会儿就发来一个指摘,说我某某某地方弄错了,还叮嘱说:“细心点,小王。”,每次听到他这句话,我都备受打击,告诫自己下次一定要小心——结果再次被他叮嘱,也许这就是普通与优秀之间的差距吧!

优秀的程序员总能成为公司不可或缺的一员,公司因为他们的加盟而创造出更多的价值,而他们的离开,也会让公司倍感惋惜。

04、知名的程序员

这种级别的程序员在圈子里很有名,他们可能就职于一个非常知名的大厂,也可能服务于一家很有影响力的创业公司,还可能是一名年入百万、千万的自由职业者。

他们往往乐于分享,善于思考,也精于赚钱,仿佛编程已经不再是他们关心的事了,取而代之的是用户的增长,知识的变现,以及伟大的产品。

如果他们愿意抛头露面的话,能轻而易举地吸引大批量的粉丝;如果他们愿意拍卖一个朋友圈好友位的话,竞拍者也是络绎不绝;如果他们开个课,出本书,销量也会在不知不觉中遥遥领先。

也许不应该再把程序员强加在他们头上,如果要加的话,前面也得带个“前”字。这类程序员并非都高高在上,有些特别平易近人,在与他们的交流当中,你甚至有一种错觉——莫非我是他大哥,他是我小弟?

知名的程序员是非常稀缺的,在他们成为稀缺之前,都有着非(die)常(dang)精(qi)彩(fu)的故事——如果他愿意倾诉的话,没准你能听上一千零一夜。

05、最后

你想成为什么级别的程序员,决定权在你的手里。但我希望,你能满怀激情,朝着自己的目标努力奋斗!

记得初中课本里面有一篇文章,叫做《十三岁的际遇》——作者田晓菲,我父亲特别喜欢这篇文章,里面有一段引用特别精彩,我至今印象深刻,拿出来分享给大家。

没有什么使我停留
——除了目的
纵然岸旁有玫瑰、有绿荫、有宁静的港湾
我是不系之舟

你想成为什么级别的程序员?相关推荐

  1. 程序员:要想成为一个伟大的程序员

    程序员:要想成为一个伟大的程序员,首先,要有钱,没钱等着饿死,其次,需要的可不仅仅是能够编写出可以正常运行的代码.Justin James给出了能够成为业内顶尖高手的程序员应该具有的几个典型特质. 要 ...

  2. 想成为一个优秀的程序员,首先做到这5点

    我经常把程序员比喻成为篮球队员,为什么呢?在篮球场上虽然都是为最终得分努力,但每个人分工不同,大家是根据自己的特点和优势负责不同的位置,比如大前锋,中锋,控球后卫等.而一个人再厉害,没有团队协同是打不 ...

  3. 裸辞三个月后,哭诉亲身经历,建议还想换工作的Java程序员不要辞职

    本文转载自:裸辞三个月后,哭诉亲身经历,建议还想换工作的Java程序员不要辞职 有位朋友私信我: 我从事Java工作,今年受了很大的影响,我们公司采取了节源措施,给在岗的每位员工只发底薪.底薪太少了, ...

  4. 龙抬头——不想当张小龙的程序员不是好程序员

    有些事,只可意会不可言传.就像我说这个题目是激励致力于从事软件开发的程序员应当以张小龙为榜样.你懂的. 说起张小龙,相信大家无人不知无人不晓,他是我们常用的微信的开发者和设计者.为人很低调内敛,为我们 ...

  5. 架构思维成长系列教程(十四)- 不想当架构师的程序员不是好程序员

    引言 不想当将军的士兵不是好士兵. 很多程序员的梦想,就是将来能成为一名架构师. 包括我刚学编程那时候,也是以当架构师为目标,觉得不想当架构师的程序员不是好程序员,希望将来能成为一个优秀的架构师.就像 ...

  6. 想要转人工智能,程序员该如何学习?(学习路线、知识体系)

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 对于程序员来说,码农之路并不是一帆风顺.对于每一个入行IT业的社会青年来说,谁不是抱着想要成为最高峰 ...

  7. java p8级别_JAVA程序员月入5000+很迷茫,如何能在一年内改变达到月入过万?

    生活中有那样一群人,他们总能是很聪明有主见,知道自己在什么时候该做什么.在什么时候该选什么,我们也能这样该多好呀!不用羡慕他们,看完本文你就能知道. 正文: 从标题来看,主线不是"如何能在一 ...

  8. 阿里P7级别Java程序员跳槽,爆出税后工资,竟比阿里高

    一名阿里前员工在互联网社区曝光了自己最近的薪资,其跳槽到新公司一个月后发了工资,月入5万多,表示很满足!这样的高薪资着实让人羡慕,有网友推测,这是税后的薪资,税前估计超过6万了. 在随后的跟帖中,这名 ...

  9. 年龄大了,想继续做个好程序员有错吗?

    自从2022虎年到来的这一个月时间,我在CSDN Blink连续发表了四五篇关于程序员随着年龄的增长遇到的一些社会问题,尤其是互联网行业的种种涸泽而渔的现状,也分享了一些自己的见解,没想到在C站的反响 ...

  10. 高中毕业就想转行当 Coder,程序员的学历真的不重要么?

    作者 l 会点代码的大叔(CodeDaShu) 你的学历决定了我要不要了解你的能力,你的能力决定了我要不要否定你的学历. 相信大家在网上经常可以看到这样的说法:"高中毕业想入行程序员,有什么 ...

最新文章

  1. mysql 5.6 online ddl_mysql5.6的online ddl功能测试
  2. java与servlet JSP_java面试精品全集[jsp与servlet部分]
  3. 【宽搜】XMU 1039 Treausure
  4. nginx upstream setting
  5. 基于mysql实现的网站_[源码和文档分享]基于JavaScript和MySQL的文化平台网站的设计与实现...
  6. C语言函数题-查找数组每行的最大值
  7. 某数加密的流程与原理简析
  8. 6、struts.properties配置详解
  9. Linux kernel同步机制
  10. 第三十四章 批量印刷书籍
  11. javascript的Foreach语法
  12. MySQL学习-MySQL条件查询
  13. m_Orchestrate learning system---二十九、什么情况下用数据库做配置字段,什么情况下用配置文件做配置...
  14. MathType几个常用字体的名称
  15. 如何将shell script功能模块化,并且对外留出函数和参数接口
  16. c语言api_C语言现在好找工作吗?我开始学了这么久的C语言,应该怎么办?
  17. 怎么用python找因子_python找出因数与质因数的方法
  18. python处理数据表_表操作,数据操作,单表查询,python操作数据库
  19. hashcat详细使用教程
  20. sox处理mp3_SOX 音频处理

热门文章

  1. 用什么软件测试内存条稳定,使用内存条检测工具监测内存稳定性,内存条检测工具有哪些...
  2. 滑膜间充质干细胞复合壳聚糖水凝胶/角蛋白壳聚糖水凝胶复合材料/壳聚糖/海藻酸纳复合水凝胶的制备
  3. 两台电脑直接使用一根网线传输文件
  4. 回归分析的五个基本假设
  5. admincp db.php,${discuz-admincp_db.php-vul} 命令执行漏洞 修复方案
  6. golang tomb_古墓丽影》(Tomb Raider)的补丁可改善Linux的游戏性和新游戏
  7. 太原今年实施一批大数据重大项目
  8. Django之Model操作之select_related和prefetch_related【ORM篇八】
  9. (一)WLAN定义和基本架构
  10. Eslint的坑和常见报错