有哪些顶级水平的中国程序员?

有哪些顶级水平的中国程序员?,第1张

一、尤雨溪

江湖流传一个小故事:一款名叫Clear的软件,在正式推出的第一天,就登场了Apple Store付费榜和总榜第二。而身在美国的中国留学生尤雨溪,仅仅花了两天的时间,就copy出了一个html5版的Clear,并且放出了源代码。

2014年2月,开发了一个前端开发库Vue.js。没错,现在就是前端在广泛使用的Vue框架!Vue.js一经发布,就受到了很多人的追捧,可以说Vue.js就是人们苦苦寻找的那个好用的前端框架。

后来的尤雨溪在patreon进行了众筹,因为他希望自己可以全职去开发Vue.js。众筹的效果是非常满意的,每个月他几乎可以收到1万美元的赞助。

二、陈皓

江湖人称"浩哥/耗子哥",对新手总是热心的帮助,一位百科全书类的前辈。陈皓,网名左耳朵耗子,酷壳coolshell.cn博客博主,文章篇篇经典,强烈推荐大家去看看。

17年以上软件从业经历,擅长底层技术架构,曾在汤森路透、亚马逊、阿里云等公司就职,目前创业中。他很谦虚,他说“我不是高手,我也不是牛人,我只是在跟随着我的兴趣和喜好去学习一些技术。”而我觉得,他是一个对技术和生活都有非常深地思考的人,很多观点都能让人醍醐灌顶。

职业要求

一般的程序员都有在专业领域的学习,还有很小一部分程序员是自学的,尽管一些专业性的学校或者综合大学可以提供,但是也需要一些别的途径来提供相关的人才。

尽管学历是比较重要的,但是公司经常把重点放在应聘者的工作经验上,很多刚从大学毕业的大学生虽然有引人注目的学位证书,但是他们找不到工作是因为他们缺乏经验。

一个程序员虽然没有正规的学历,但是如果一个人拥有程序设计的深厚知识背景或者丰富的工作经验的话,那么他的机会要比有学历的应届毕业生大得多。所以要尽量抓住有用的工作和实习机会,这样的话在毕业后你就会发现,多实习让你有更多的经验,在找工作的时候就有更多的机会。

对于职业程序员,另外一个重要的方面就是,程序员需要不断提升自己的业务技术,他的技术必须一直保持在一个较高的水平,并且要不断发展,程序员也要寻找贸易的机会,要参加研讨会,在周刊上发表文章和接受职业教育,这些使程序员在自己的领域中分级或者不断并排前进。

“从此,我走上了一条不可回头,并和以前完完全全不一样的道路。”从国企到民企再到外企,从打杂到程序员再到高级程序员到team leader到技术主管,从小酒店mis到企业oa到全国性的大系统到世界领先的分布式计算平台集群软件,“若干年过去了,经历了高速的发展和获得了很多不同的经历,但唯有当时选择离开银行这件事情让我至今都为之兴奋。迄今为止,这是我自己觉得最最有成就感的事情。”

正如陈皓所说,“也许,最让一个人感到最有成就的事情,不是他做成了什么,而是他选择了什么。”

认识自己

多年打拼后,陈皓虽已是技术主管,但走的那些弯路,浪费的两年时间,一路中的心酸让他明白了很多道理。“今天,我对许多刚上路的朋友都会说,人生的规则很重要,从上大学时就要好好规划,这对国人来说尤其重要。因为对于国人来说,人生的头20年都是被别人规划的,导致了自己根本不会给自己做规划。这点是相当危险的。”

人生短暂,属于自己黄金的时间不多,如果把太多的时间浪费在寻找道路和方向上,很有可能会导致一事无成,要及早确定自己的规划,然后照着这个规划坚定不移的去执行。陈皓认为,做规划时最重要的是两个方面:一是清楚地认识自己的能力、优势和性格;二是确定自己的专业和想从事的行业。只有在确定这两方面后,才能做出自己的职业规划。

两方面看起来很简单,但认识自己并不是一件容易的事情。陈皓认为应当从下面十五个方面审视和认识自己,帮助自己确立人生规划:a)所掌握的知识,b)问题的解决能力、判断能力和分析能力,c)对待困难的心态,d)团队合作能力,e)表达能力和语言组织能力,f)创造和创新能力,g)沟通能力,h)自己的性格内向还是外向,i)是否有坚韧不拔的专研精神,j)自己的弱点和性格上的缺陷,k)学习能力,获得知识的能力,l)领导组织能力,m)目前自己能够进入的企业,n)目前自己在社会中的地位,o)目前自己的竞争实力。

职业规划就像软件工程

确定了自己的行业和专业领域后,接下来的事情应该是:1)努力掌握这个行业的知识,2)用最短的时间了解这个专业和行业更为具体的各个子方向。然后在实际过程中再认识自己。比如,选择了计算机行业,应该尽量地尝试软件、硬件、网络、娱乐、媒体等计算机行业不同方向的工作,如果从事软件,又分web、系统、项目、erp、crm、数据库、嵌入式……,在工种上又分开发、测试、技术支持、流程管理,项目管理,系统架构,售前,售后……。当然,我们并不需要去尝试所有的工作或工种才能知道自己适合什么,我们完全可以向从事不同方向的人咨询并结合自我认识来做出判断。

在这个过程中,迷茫的摸索可能是很难避免的。能够及时得到前人的指点可能会是一个捷径,征求前人的建议可以起到参考的作用,快速原型(快速尝试)或许也是好的办法。因为人与人不同,他人的路并不一定适合自己,适合自己的路还要自己去规划,别人是帮不上忙的。

要经常性地跳出自己再来看自己,客观地分析自己的优势和劣势。让自己和别人掂量掂量自己到底几斤几两,了解到自己的长处和特点,然后才能知道自己适合做怎么样的事和并调整自己的职业路线,这是一个“肯定到否定再到肯定”螺旋上升的进化过程。当度过对自己对社会的“陌生期”后,才有谈得上对自己人生和职业的规划。

个人的职业规划就像软件工程。我们都知道软件项目最大的敌人是需求的不明确和需求的大面积变更,同样,在个人的职业规划中,自我需求的不明确和需求的变更也是非常危险的,尤其是在职业计划实施了四五年后需求的变动和改变。只有需求确定以后,才谈得上个人的职业设计的hld(high level design)和lld(low leave design),以及具体实现。此后随着自身的日益成熟,可以随时为自己的bug打补丁(patch)改进自己的职业生涯的设计和实施细则!

作者的分析方法很正确,我面试别人时就经常使用这种方法,虽然识别成水货后不能百分百确定这是一个水货程序员,但可以保证能通过这样的程序员基本靠谱,即使他们能力不足,也很容易培养起来。

用个简单的例子,问一下线程同步有什么用,资深水货程序员通常可以回答出很标准的答案,标准到比资深程序员好得多的程度,这时你只要重复问一遍,为什么要使用同步,然后听到的答案就是同步通过synchronized 进行同步,然后什么会死锁之类的回答就出来了,从面试经验来看,水货程序员几乎百分百是这样回答的,不相信你可以这样考查你没写过线程同步的同事,如果你被打死的话千万别找我。

另一方面,很多高深的大牛同样有很多知识上的盲区,比如很多写OS或低层代码的大牛连String类最常用的使用方法都不会,很多做DSP的搞过十多年C语言,printf这个函数都不一定能拼全,这都是很正常的事,因为他们的工作中很多时候在发明轮子,并不需要使用这些系统上现在的东西。所以如果用该作者的方法去恶意判断某人是水货的话,很多真实的大牛同样可以归于水货列传当中,就像不管你有多牛,被方舟子钉上一样会死得很惨一样,虽然方舟子很多时候是对的。当然,该作者目前还没有表现出方舟子的迹象出来。

虽然真的大牛,出书的很少,但还是有部分大牛会出书,作为大牛的出版物,有很多初级错误,这个也是很正常的,一方面是他们没时间,更重要的是他们很多东西也真的不懂,但出个编程书要求把东西写全,不能只写自己擅长的那部分,他们可能也是去其它书上抄的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11147435.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存