IT 大牛是怎样炼成的?

程序猿2019-03-14 12:44:04

来自:知乎

链接:https://www.zhihu.com/question/30787036

公司来了个IT大牛,92年出生的人,现在是我们的team leader。


是我见过的程序员里最厉害的一个,不知道他的能力是怎么炼成的。


说说他的事迹吧。


他高中的时候,就接触编程(VB6),他一直在想,设计一个算法和自己对弈(象棋),看看是自己设计的算法厉害,还是自己厉害。

他自己独立做,没有参考任何资料,花了半个学期,竟然写出来了。


他自己动手做了一台斯特林发动机,设计了一台酒精灯带动的缝纫机原型。


他家是农村的,他爸爸开货车,车挂被偷了。

他就用继电器做了一个报警器,如果偷车贼偷走车挂,就会弄断铜线,触发继电器报警。


农村的建筑工人比较落后,走线方式不好,是把线爬在墙上,他觉得不妥。


就找建筑工人商量,在墙上开个槽,线都从槽里过,如果要穿过楼层,就钻穿天花板,如果要穿过房间就钻穿天花板下面的那堵墙。

后来他的建议被采纳了。


他们大学选课系统很挫,一到选课就开始卡,人工不容易选上。

他就用按键精灵写了个自动选课的脚本,并且获得了女神的好感(那年他大一)。


他把公交一卡通拆了,把里面的东西抠出来,放进他的手机后盖里。

这样出门带手机就行了,手机当作公交卡来刷。


每次跟他一起坐地铁,他都知道坐那一节车厢下车正好是电梯口。


他刚来公司的时候,就问HR部门,大楼的逃生门太窄(只开半扇门),过了晚上8点,就会完全锁住。而且门锁是通过电来控制的,刷卡开门。

这样,遇到火灾会不会电气设备失灵,门打不开,把大家关在屋里?


他还给公司培训讲师团队提出建议,让讲师收集一些好的工具、网站、社区加入到培训中。比如安全培训可以让大家去看看乌云网,数据库培训可以介绍下sqlyog的架构同步工具。


我们坐车去外地团建,路过一个铁路和公路相交叉的路口。

他对我们说,这个路口设计不合理。

根据这里的车流,可能会有车被前后的车辆夹住,堵在铁路上,活活被火车撞死。


他来了之后,给他管的服务加了大量监控和统计,还带人做了各种分析系统,像gc日志、连接池、dubbo服务日志、慢查询日志、日志流程化跟踪,做了个网站健康状态监测系统。

这个系统能看出硬件利用率(水位图),服务器full gc可能的原因。


他还用selenium做了一个自动化测试兼网站自动巡视系统,能够跑在linux上,自动截图,画红圈圈,写错误批注,发邮件给相应模块负责人。


他目前正在研究docker化,准备把线上各种服务都放进docker里,做到每一个服务都能够自动扩容。


像这样的大牛,都是怎么炼成的,我要如何做,才能够成为1个大牛?


justjavac
记得初入公司时,写的代码乱七八糟,错误百出,bug连连,不仅项目经理骂我,其他同事也对我怨声载道。后来听朋友介绍,就报了一个培训班。经过1个月的刻苦学习,终于功夫不负有心人啊————他们都骂不过我了。


林灿斌

这些其实不难啊。


他高中的时候,就接触编程(VB6),他一直在想,设计一个算法和自己对弈(象棋),看看是自己设计的算法厉害,还是自己厉害。

他自己独立做,没有参考任何资料,花了半个学期,竟然写出来了。

这个难度对于高中生来说还可以,但是没有具体实现的代码难以判断水平。

现在广东沿海高中的06年后的高中教材里都是有教计算机编程的,教的就是落伍的VB6,以至于当时我们班上不少人自学了其他编程语言。


他自己动手做了一台斯特林发动机,设计了一台酒精灯带动的缝纫机原型。


他家是农村的,他爸爸开货车,车挂被偷了。

他就用继电器做了一个报警器,如果偷车贼偷走车挂,就会弄断铜线,触发继电器报警。

初中生的知识完全足够做到这一点,我初中就开始也做过一些类似的小玩意儿,不过偏化学类的多,例如制铜树啊、原电池、用粗铜线跟磁石电池之类的做个风扇什么的,好多是中考完没事干做的。(跟标题里的“IT大牛”有什么关系?)


农村的建筑工人比较落后,走线方式不好,是把线爬在墙上,他觉得不妥。

就找建筑工人商量,在墙上开个槽,线都从槽里过,如果要穿过楼层,就钻穿天花板,如果要穿过房间就钻穿天花板下面的那堵墙。

后来他的建议被采纳了。


这是什么鬼?(跟标题里的“IT大牛”有什么关系?)


他们大学选课系统很挫,一到选课就开始卡,人工不容易选上。

他就用按键精灵写了个自动选课的脚本,并且获得了女神的好感(那年他大一)。


按键精灵属于傻瓜软件,很多小学生游戏挂机就是靠这个,之前回村里就见小孩玩过儿,使用非常简单大家都可以去试试。


并发量还是只有一个,同时要等待浏览器的UI渲染,也没办法做到渲染完毕后的回调,效率上比直接分析JavaScript然后写多线程并发选课脚本低几十倍不止了,还浪费电。选课系统都在内网,写段小程序只开10个线程发包,效率估计就是这个上千倍了。


用这种傻瓜软件实在没什么可说的,以前光棍节抢红包时女生宿舍就有小姑娘用按键精灵抢红包,男生对于购物热情倒是不高所以没参与。


他把公交一卡通拆了,把里面的东西抠出来,放进他的手机后盖里。

这样出门带手机就行了,手机当作公交卡来刷。


RFID之类的近场通讯,卡里面就是一个线圈,拆线圈只是一个耐心活儿而已,小学生有点耐心也能办到的。(跟标题里的“IT大牛”有什么关系?)




而且我觉得这人做事有些缺乏思考,你把公交卡拆剩一个线圈,以后充值什么的带来的麻烦可要多得多了。

如果是电子类的大学生,一般RFID实验课的作业会要求做一套简单的公交车刷卡系统,模拟充值和支付,整个系统。当然这个简单系统离实际的联网的分布式系统还差很多,但跟挖线圈这种小学生工作比起来就高大上太多了。


每次跟他一起坐地铁,他都知道坐那一节车厢下车正好是电梯口。

他刚来公司的时候,就问HR部门,大楼的逃生门太窄(只开半扇门),过了晚上8点,就会完全锁住。而且门锁是通过电来控制的,刷卡开门。

这样,遇到火灾会不会电气设备失灵,门打不开,把大家关在屋里?


这个属于生活经验,不值一提。我在家里,半夜起来闭着眼睛都可以去客厅倒水喝,如果你经常坐地铁,要做到这一点并不难,相信我。(跟标题里的“IT大牛”有什么关系?)


他还给公司培训讲师团队提出建议,让讲师收集一些好的工具、网站、社区加入到培训中。比如安全培训可以让大家去看看乌云网,数据库培训可以介绍下sqlyog的架构同步工具。


看到这里我觉得贵司水平有些低啊……平时竟然都没看乌云,要别人告知了才知道么……


推荐虽然不能代表水平,但是我也很有兴趣知道他推荐了什么社区,是爆栈网之类的么?


我们坐车去外地团建,路过一个铁路和公路相交叉的路口。

他对我们说,这个路口设计不合理。

根据这里的车流,可能会有车被前后的车辆夹住,堵在铁路上,活活被火车撞死。


像西直门立交桥之类的,明显有缺陷,但是让你来,你能给出什么好方案么?


发现道路设计不合理,只要你路走多了是肯定会发现的。


并且公路和铁路交叉也没有问题,你只要按照科目一里的交通规则来,肯定不会被火车撞死,这说明这个人的科目一,很大可能是混过去的。(跟标题里的“IT大牛”有什么关系?)


他来了之后,给他管的服务加了大量监控和统计,还带人做了各种分析系统,像gc日志、连接池、dubbo服务日志、慢查询日志、日志流程化跟踪,做了个网站健康状态监测系统。

这个系统能看出硬件利用率(水位图),服务器full gc可能的原因。


运维/开发的基本功,再一次觉得贵司挺low,我自己搭的服务器上监控和统计也都加全了,慢查询日志是SQL优化的基本、Munin之类的System Load/Processes/Memory监控也是性能优化的基本、打log是调试和发现Bug的基本,都是大学生课上就有的东西了。之前没有这些,贵司是怎么搞开发的?面向运气编程?


他还用selenium做了一个自动化测试兼网站自动巡视系统,能够跑在linux上,自动截图,画红圈圈,写错误批注,发邮件给相应模块负责人。

他目前正在研究docker化,准备把线上各种服务都放进docker里,做到每一个服务都能够自动扩容。


程序员就是搞开发的……开发出来一个产品,如果没有解决特别的技术难点实在不值得夸耀。


这种事情就这样看起来似乎并没有什么难点,特别是还用了各种成熟的轮子,希望你能介绍一下这些项目难点,例如性能是同类产品X倍、自己做了一个邮件通信的协议实现之类的?或者根本就是没有?



评论里有不少人觉得会用按键精灵、会打log和开监控,或者能用大量现成轮子组装出一个产品,就是很厉害的程序员了,招聘时请一定要小心这批人。

题主对这位“IT大牛”的情况知道得这么详细,虽然比较可疑,但我也不猜测什么了。


里面跟IT有关的、比较值得一提的也只有高中写了象棋对弈,不过没有代码可以看并不能得到什么结果。


想起了以前高中,班里只要有一个人会开个Command Line移动文件就被众人认为是IT大牛了。所以你说那个人“是我见过的程序员里最厉害的一个”,我觉得可能是你不是IT行业从业者的原因,或者是眼界太窄,没见过多少程序员,所以并不具备足够的判断能力。

你如果只是要达到这样的水平,上大学,不要抱着“毕业后当产品经理”的心态,认真读完CS专业,就可以达到这样的水平了。或者中学生,多看书和实践,也能达到这种水平。


jacky yang

做了近二十年研发,接触的IT"大牛"也不算少。有些感触:


1、天分绝对是第一位的,有些人的思维天生就很适合搞IT。可能有朋友会质疑这点,从业人员那么多,难道都有天赋?以编程为例,绝大部分人,其实只是做了知识迁移,比如,参加培训班或者阅读,然后在项目中实践,把学到的知识复现一下。真正能举一反三,大胆创新的人可以说是凤毛麟角。当然,国内由于生存的压力,这点可能要求过高,如果能把问题理解得很透,甚至能"专业造轮子",比如 @vczh 那也同样是凤毛麟角的。


所以,其实有这么几个层次:


用轮子--专业用轮子--造轮子--专业造轮子--专业发明轮子。

第一种是码农,第二种是高级码农。后面三种人,确实需要天赋,尤其是最后一种。


2、兴趣是最好的老师。这条自不必多言。"大牛"一定是对他的领域很有兴趣的。


3、有合适的发展机会及展现舞台。有些人确实有天赋,但发展的路子歪了。这种人我真的见过,本来是个做技术的好料子,但编而优则管,最后做管理去了,对他个人来说也许是好事,但世间从此少了一个"大牛"。


西风君

楼主对这位大牛的情况这么清楚,不禁让我想起了那位桀骜不驯优秀的应届生的自荐贴

http://www.zhihu.com/question/29210750


萧井陌
你们公司还招人吗?我正好每天有一小会空闲时间


小爝

好屌(⊙o⊙)哦。厉害厉害。

题主满意了吧……?


徐行

我也92年的。

我1年级就会Visual Basic(其实是做技术员的叔叔教我拽了几个按钮到窗口上而已)。

4年级就会做网站。

5年级就会超频CPU和装系统。

6年级就用按键精灵玩网页高达大战

初中就会PS和3D建模和渲染,我做的飞机坦克被专业人士交口称赞。

高一用pascal两天时间写了一个数制转换器。

高二就会用 combustion 做后期。

高三学了素描,画的一张静物因为画得太好,给同画室的某艺术生带来了很大压力,被他踩了一脚。

本科期间学了计算机图形学、C++、MFC、DX、HLSL、Physx、3DsMax 插件开发,写了一个自己的游戏引擎。

现在我还会 HTML+CSS+JS,我还自己写了一个HTTP服务器。


总之,我就是一个能当美工,能当后期,能写服务器,能写前端,能写游戏引擎的文艺程序员,

当然我最厉害的技能还是吹牛。


什么什么?你说3D建模和素描和IT没关系?题主说的斯特林发动机、继电器报警器、墙上开槽走线不是一样和IT没关系吗。


pig pig

每个人对【牛】的定义不同。

我非常佩服我的同事,每次我关机都要大半分钟,而他关机只要一两秒就搞定了,我一直不明白原因,直到我去财务无意看到了他每年报废的设备清单后...



本文编号1849,以后想阅读这篇文章直接输入1849即可。

●本文分类“修炼之道”、幽默搜索分类名可以获得相关文章。

●输入m可以获取到文章目录

推荐15个技术类公众微信

涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、iOS开发、C/C++、.NET、Linux、数据库、运维等。

小编推荐↓↓↓
 

掘金是一个高质量的技术社区,从 Swift 到 React Native,性能优化到开源类库,让你不错过互联网开发的每一个技术干货。长按图片二维码识别或者各大应用市场搜索「掘金」,技术干货尽在掌握中。

点击「阅读原文」,下载掘金。

Copyright © 丰城计算器学习组@2017