8

【终结篇】不要再问我程序员该如何提高了……

 3 years ago
source link: https://zhuanlan.zhihu.com/p/42040715
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.
neoserver,ios ssh client

【终结篇】不要再问我程序员该如何提高了……

QQ群:1017375061(17bang.ren)再见

已经工作了的程序员该如何提高自己?我看到过很多说法,包括但不限于:

  • 多读书,然后各种书单,技术的、管理的,情商的、智商的,文学的、艺术的……
  • 锻炼健身,身体是革命的本钱嘛!
  • 写博客,这个@dudu应该最喜欢了
  • 多交朋友,积攒人脉
  • 学学做贴膜卖烤串啥的

错了么?也不能说错。但我总觉得啊,怎么说呢?一股或浓郁或清淡的“技术宅”味道,算了,不知道怎么形容,直接上我的观点吧:
向你的老大学习,或者说,向人力资源市场学习。
啥意思呢?你就仔细琢磨:你和你的老大之间的差距。然后想方设法的缩小这种差距,就OK了。等你们之间没有差距的时候,你是不是就有资格坐他的位置了?你是不是就成长了?这里的老大,可以是老员工、team leader、project manager,或者大boss,总之,身边比你强的人就行。
你干嘛要到QQ群里去问,到论坛里问,到一些你其实搞不清楚情况的地方瞎问?我们就不说有些人自以为是喜欢海吹胡说,就算人家是个老实人,但他根本不了解你的情况你的环境,他的回答是不是适合你,鬼大爷才知道!
比如人家是海龟博士在一线城市搞芯片,你野生码农三线城市搬砖,他告诉你要有所发展,至少得985/211研究生文凭,熟悉CPU底层架构和电路知识……人家没骗你,在他那个位置,研究生学历确实是打底的,他钻研的是芯片设计当然要知道什么CPU架构了,但你只是个码农,你做的是应用软件开发,他的这些话你能听么?
我特么估计有些同学还真要听进去!开始为自己学历自卑,开始为自己码农的工作和身份自卑的同学请举手。
好吧,都坐下。例子举得不恰当,我们得换过来:
比如人家是年薪百万独角兽公司的CTO,你是一破研究所搞芯片的,他告诉你要有所发展,还是得“站在风口上”,要有快速学习的能力,处理复杂业务的能力,学学管理带带队伍……人家没骗你,做互联网开发做应用开发,业务是第一位的,但你一做芯片开发的,这些话能听么?
例子还是不恰当,不用举手,我知道有好多人都真的丢了本职,学Java学PHP奔更有“钱”途的互联网去了。
例子举得不好,但写都写了,舍不得删。围城啊!
我正面说吧,假设你是一个搬砖的野生码农,其实呢,你最脚踏实地最有可能成功的路径是:

  • 自己能熟练的搬砖
  • 能带着别人一起搬砖
  • 能自己不搬砖,指挥别人搬砖
  • 有一帮用惯了的人,能自己接点搬砖的业务……

搬砖不丢人!周围看看,有几个人不是在搬砖?无非是搬这样砖搬那样砖而已。
搬砖不容易!周围看看,有几个人把砖搬好了?屎一样的垃圾代码,到处都是。
那怎么样才把搬砖这个有前途的工作干好呢?或者更直接一点,怎么一步一步的往上爬呢?最简单的,抬头,看看你旁边几位已经爬上去了的老大啊。
我知道很多人不服气,“我那个老大,猪一样的……”,然后可以吧啦吧啦说一整天他老大的毛病。我真不知道怎么说,只能推荐《折腾》这几章。不愿意看的,我简单点说,是人都有毛病。但你要能看到他的闪光点。你以为你在外面认识的那些“大佬”没毛病,一样一样的(比如是飞哥我了,还不是一样被自己员工嫌弃)。
做这个思想工作很难,所以我建议退而求其次:向人力资源市场学习。
怎么整呢?经常去看看招聘启事,甚至时不时地悄悄参加几次面试,看看你这个方向,市场上需要的是什么人。注意我加粗的部分,确定的方向非常重要。
我举个例子吧,http://ASP.NET方向,从0工作经验到CTO,下面是我在51上面随便弄的几份招聘要求:


无工作经验要求

要求很低,就是一个“熟悉”。大概就是Visual Studio要会用,能用http://ASP.NET连上数据库写个小demo就OK了。所以其实没有工作经验,找份工作也不是很难的。算了,略过了,我现在是站着说话不腰疼了……哈哈


1-3年工作经验要求

好了,我们看到了一些更多的东西,比如“大型”“高并发”“优化”,不过这些是优先项,会最好,不会也不强求。但对“B/S结构”“MVC框架”这类更基础一点的东西有要求了,C#语言要“精通”,并且要“深入理解”.NET。另外值得注意的一点就是:“技术文档”。所有的开发人员都讨厌写文档,但你要知道,能让你写文档,已经是对你能力的一种肯定了。技术没到一定水平,你写文档的资格都没有!
所以,这就是看“招聘启事”的作用。不然你还稀里糊涂的,吐槽项目经理让你写文档……


5年以上工作经验

重复的我们不说,需要注意的是:

  • “大数据优化处理能力”不再是“优先”,而是要求“具备”了。
  • 我们看到了“软件项目的管理流程”“带领”“团队”,这是什么?管理技能啊!
  • 最后,有一点大家千万不要忽略:“知名产品系统架构工作经验”。系统架构,不用说了,我强调“知名”二字。啥意思?从这时候开始,人家就不仅仅看你本身的能力,还要看你一些“外在的”东西。本来,你产品架构得好不好,和这个产品知不知名,是没什么关系的。知名产品的架构就一定好吗?不一定的。但是,注意这个但是,用人单位不这么想。因为到了这个阶段,用人单位对你的能力判断,就有些力不从心了。就像我们消费者也没办法判断挖掘机技术那家强,怎么办?看包装呗,看广告呗!国强代言的,应该不会太差吧……就是这种心理。越到后面,越是高级人才,越是这样。

5年以上工作经验

首先说一下,这时候,你还用“ASP.NET+5年工作经验”做关键字,搜出来的职位就不多,也不具有挑战性了。所以我换成了CTO,从任职要求也可以看出来,没有具体的语言要求了。
然后,特别注意,5条要求,有3条出现了“团队”。说明什么?说明这个时候,管理能力就非常非常重要了。除了管理能力,其他要求其实也很“虚”。


好了,我随便抓的几份招聘要求,就举个例子,可能不全面,大家最好还是自己去看看,自己去分析分析。这样做,我觉得比听一些笼统的空洞的五花八门的说法强。比如说,就没有被某些人吹上了天的“数据结构和算法”——这并不是说“数据结构和算法”不重要,可能你的领域(比如图像研究啥的,我瞎说的),这些东西确实重要,但并不是任何领域他们都重要,更不是不精通“数据结构和算法”就没办法混出头。我是不是又挑起来“口水战”?我猜有些同学会说“优化”“大数据”就是数据结构和算法干的,呵呵……


就这样吧,就像我题目说的,【终结篇】,以后这个问题我就再也不说了。有些人,一点就通;有些人,怎么说都没用。自己的路,自己走,祝大家一路走好!

点了个推荐会走得更好哟!


+++++++++++++++++++


每天一篇博客 第2周第2天,完成,(^-^)V

v2-9fcb78a8d51ab91aece012a0b0fb8823_720w.jpg

Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK