就现实而谈:程序员“努力就会成功”?真相残酷但又不得不面对!

那一年,我加入了某知名公司的某知名部门,在办公室中,我看到了到处都挂着——“努力就会成功”的条幅,这个部门中大多数员工的邮件签名都会有“努力就会成功”,我感到一种热血沸腾的气氛,这是我在多年工作来都没有感受到的,当时挺高兴地能和这样一群人工作,也没多想。直到有一天,我看到这些高级的软件工程师们把自己关在又挤又吵的会议室中,拼命地加班,真是拼命,周一到周日,每天早上10点到凌晨3点甚至凌晨5点,连国庆节都来上班,就在这样的环境和状态下,连续干了三个多月……上线前,QA找到了1000多个bug(你没看错,就是一千多个),最后这个项目用了1年多的时间来返工,本来一个6-8个月的项目,团队被打了鸡血想在3个月内完成,最终却花了近两年的时间来返工……
(要知道,我以前在外国公司工作,外国老板看到团队在长时间加班会感到焦虑的,因为加班通常代表着有不好的事情正在发生……)

所以对此,我是有点看不懂的,看不懂的是,为什么这么一群聪明的人,放着明亮宽敞的办公桌不用,硬要挤在一个又窄又小又吵又热的小空间里工作,而且要这么透支地写那么重要的很关键的系统级的代码……这就好像,一架在一个小作坊里被人加班加点赶工出来的飞机,谁敢坐啊?!老实说,这群工程师真是很优秀的工程师,他们完全是可以做得更好的……但是却做出了如此蹩脚和糟糕的系统……他们说,这样坐在一起可以做到快速沟通,然而,我觉得这恰恰是一种没有章法的表现。

也是在这家公司,在这个项目烂尾一年前,公司感到了危机,CEO号召全体996,举全公司之力从董事长到下面基层员工对抗外部所谓的威胁,有的部门为了表现,甚至997,然而,在一年后,做出了一个烂得不能再烂的软件,最终以失败告终,很多人包括CEO也因此下课……

这是最让我看不懂的一个事了,为什么这么如此成功的公司的高级管理层会做出这样的事情,而且还制定这样的政策……把这么优秀的员工以及公司大把把数以亿计的钞票投入到这种错误的路线上来,而且还拼命地加班…… 他们脑子里在想什么呢?难道他们真的以为,有足够多的钱,足够多的人,然后拼命加班,就能打败对手吗?……

你喜欢这句话吗

“努力就会成功”,“加班就会有成就”,“勤劳就会致富”……是这样吗?仔细思考一些,这些话存在严重的逻辑问题,我们在高中的时候学过“充分条件”,“必要条件”和“充要条件”!“努力就会成功”这句话,把“努力”说成了“成功”的充要条件,这不就是错的吗?努力只是成功的必要条件之一。你在错误的方向或是格局很小的方向上努力,能有用么?你努力地要饭,你努力地当搬运工,你努力地打骚扰电话销卖保险…… 在错误和小格局的方向上努力,你还觉得努力还有用吗?

但是很多人是很喜欢“努力就会成功”这句话,这类人也很喜欢看很多小人物通过自己的努力变成成功人士的励志的故事,为什么这种故事会被很多人喜欢甚至感动。因为这很符合大众的心理诉求,这种诉求其实就是一种只要使力只要拼命了就可以成功的心理诉求,因为这类人基本上都是能力有限,不知道怎么提升自己的人,当他们看到只要拼命使力就可以成功的观点时,他们就会有共鸣,就会感到,不用学习那些晦涩难懂高级的知识,不用掌握和练习哪些高级技能,自己只需要在低级的事情上拼命和努力,加更多的班和干更多活,自己就会像电影中的那些小人物一样,总有一天会成功的……

“努力就会成功,勤劳就会致富”,不但符合那些低级管理者的利益诉求,同样符合那些能力不足不愿意学习和成长的人的诉求。因为,他们混淆了行动与进展,忙碌与多产,他们以为能靠蛮力可以弥补思维上的惰性,靠拼命可以弥补能力上的不足……

喜欢或认同这句话的人基本是能力上有问题的人,这类适合做劳动密集型的事。不信你可以试试看,当一件事的难度超过一定程度的时候,那些聪明的人会找到更省力的方法,而能力上有问题的,还是在那使蛮力。

我成长的过程

回想我的过去,我在2001年那年被外包到了某银行做开发,标准的9/10/6,封闭开发,就是用C语言在AIX系统里堆一些银行的交易逻辑,老实说,这个过程并没有让我学到什么东西,也没有什么成长,我每天想的就是我要离开这个地方,所以,我在晚上10点以后开始看书学习到11点半,并使用工作环境动手实践书上的代码,一年后,我精读了《TCP/IP详解》《Windows核心编程》《Java编程思想》等书。然后,我找到一份外企业的工作,月薪一下翻了三倍。

在外企不加班,但是当时的外企压力也很大,对代码的质量要求的也很高,来的第二个月,就因为代码写的太差,差点被开掉,所以,为了能够达到更高的标准,我自然也是很努力的,在周末甚至黄金周节假日我哪里都不去,我就去公司,但我不是在公司上班,因为我没有自己的电脑,所以,我只能蹭公司的电脑,这导致办公楼的管理人员经常打电话给我让我帮他在周末的时候管理物业……?在这家公司是我成长最快的时候,然而,并不是因为我的努力,而是因为有很多比我牛逼的人在Code Review上给我大量的帮助,在项目上帮助我,我的努力学习虽然也有作用,但更多的是高手对我的帮助

再回想一下我以前在职场上的很多关键点,不是因为我加班了,而是因为在某些关键问题上,我跳出来解决了其它人都解决不了的问题,我解决了一个网络通信莫名其妙的断掉的问题,我把性能优化了很多倍,我解决了一个不能重现的一个困扰团队3个星期的问题(其实就是大家没有认真读文档),我在入职一个公司的第一天里就为这个公司解决了一个历史遗留问题……在Platform,我每周解决了bug数是全公司的其它人的总和还要多(从不加班),在路透,我带团队优化的系统的性能是全球所有研发中心最高的,在亚马逊,两周打通美国和德国的订单和商品列表系统……我也有失败的时候,而我失败的时候,总是因为我搞不定事,即便是加班拼命努力也无济于事!是的,我的职业生涯的成长,最根本的不是你有多努力,有多勤奋,而是你能搞定很多人搞不定的事!

你不信你可以看看你们公司那些不用加班,就算什么也不干,公司也要花钱养的技术人员,他们的成功一定不是努力和加班加出来的,你会发现这些人拼的不是谁干的多,而是谁解决的问题更有难

我加班996的时候,从来都不是我成长最快的时候,而我和一群牛人在解决难题的时才是我成长最快的时候

Work Smart

2015年因为父亲病危要动手术,所以我不能工作在家照顾父亲。于是我就成为了一个自由职业者,帮很多公司解决一些技术问题,好多都是高并发和系统稳定性的问题,有一些是分布式架构的运维的问题,还有一些是工程管理和企业文化问题……有一些小公司的单体架构在业务上一推广就宕机了,于是把我叫过去,我在生产线上直接re-arch,用一些非常规的手段,1-2天就把性能救过来了…… 还有就是解决一些点状的技术问题,还帮用户做一些design/code review……,有70%工作是真正的按劳取酬,也就是先把问题解决了再谈要收多少钱,那段时间我出卖的不是我的劳动力,而是我的技能,所以,反而比打工挣得多多了,而且还比较轻闲……

有时候,我还调侃到,你在大公司里一天写上万行代码,拼命地加班,你信不信,我只用写几百行代码就挣得比你多?同样是一个简单的 for-loop 语句,有人写的就值1万元一行,而你写的则一文不值。关键不在于谁写的代码多,关键在于我们解决了什么样的问题。你千万不要以为只要付你足够的钱,你就可以996,让你干什么都可以,然而当你自己把自己当成劳动力的时候,你也就只是一个像牲口一样的行事了!

这就好像算法一样,你那个O(n^2)的递归穷举算法,再怎么样也干不过我的O(n)的动态规划的算法。

现在我拿了投资在创业,一开始帮助各大企业建高并发高可用云化架构的公司,现在还给企业提供金融和营销能力,我跟客户谈业务的时候,基本不是因为我有多加班多努力地做方案,而是我能一针见血地指出用户的问题,帮用户解决问题。我在很多地方都见到阿里、蚂蚁、华为、HP……,一个小创业公司跟他们竞争真的很难,但我知道,要能竞争过这些大公司,这根本就不是能够通过加班996或是拼命努力就能搞定的,我必需要使用更好的方式,所以,除了更好地站在用户的立场,能够给用户制定更符合用户的技术方案之外,我必需做到我的技术方案不比这些大公司的差,而这一点,完全不是加班、努力或是勤奋能出来的,这是需要靠自己的经验、学习能力、归纳思考、和与更多牛人交流才出的来的……当我给某银行CIO介绍完我的分布式系统的方案后,CIO给我微微鞠躬说:“过去一两年,我听过几乎所有国内外产商跟我讲的分布式的方案,你的是我听过的最好的方案!谢谢你!”,当我给某省电信行业公司讲了一下DevOps的方案后,老总对我说:“你们真的是做事的人!”,当用户来问我:“你们的API网关是怎么写的?为什么运行的这么稳定?”……这些话都是让我很心里很暖的话……当然,我也有被骂的时候,也有失败的时候,但基本上来说,我无法通过努力工作改善我思维的不足……

我们学计算机当程序员最大的福气不是可以到大公司里加班和996,而是我们生活在了第三次工业革命的信息化时代,这才是最大的福气,所以,我们应该努力地提升自己,而不是把自己当劳动力一样的卖了!在这样的一个时代,你要做的不是通过加班和拼命来跪着挣钱,而是通过技能来躺着挣钱……

原文地址:https://blog.51cto.com/14226230/2424551

时间: 2024-10-10 00:55:38

就现实而谈:程序员“努力就会成功”?真相残酷但又不得不面对!的相关文章

浅谈程序员的行业选择---程序人生

引言 本篇博文接着许久之前的一篇博文<浅谈程序猿的职业规划,看你如何决定自己的未来吧.>,继续探讨一下程序员行业相关的内容. 行业的选择不仅对于程序员来说非常重要,对任何一个人来说都是一样的.只不过对于程序员来说,行业更容易被忽略.从程序员每天热议的话题就能看出来,大部分的热议话题都是C#和Java哪个更牛B,或者IOS和Android哪个挣得钱多,很少看到程序员去讨论两个行业谁更有发展前景. 鉴于此,今天我们就来着重讨论一下程序员行业的选择,行业和语言一样,没有谁优谁劣,只是一种选择罢了.

浅谈程序员创业(要有一个自己的网站,最好的方式还是自己定位一个产品,用心把这个产品做好)

浅谈程序员创业 ——作者:邓学彬.Jiesoft 1.什么是创业? 关于“创业”二字有必要重新学习一下,找了两个相对权威定义: 创业就是创业者对自己拥有的资源或通过努力能够拥有的资源进行优化整合,从而创造出更大经济或社会价值的过程.——百度百科 创业是一种思考.推理和行为方式,它为机会所驱动,需要在方法上全盘考虑并拥有和谐的领导能力.创业必须要贡献出时间.付出努力,承担相应的财务的.精神的和社会的风险,并获得金钱的回报.个人的满足和独立自主.——互动百科 两者都给出了明确的创业定义,这里想着重想

谈程序员的出路

http://blog.chinaunix.net/uid-25838286-id-3068153.html 从我做小程序员开始,就从未间断的在论坛看到有人在问程序员的出路在哪里,其实我很能理解这些人的想法,在行业做了几年,有些感想跟大家随便聊聊.俗话说,365行,行行出状元,此话也适用于IT行业,尤其是程序员.当你迷茫找不到出路,又想快速成长和提高的时候,有两种方案可以供你参考:1.努力成为你工作环境中最优秀的人(技术最好的人):2.跳槽,去另外一家公司做比你能力要高的工作.针对工作环境的不同

转:浅谈程序员的英语学习

转自:http://www.cnblogs.com/haoyifei/p/5687235.html 浅谈程序员的英语学习 作为在中国工作的程序员,不懂得英语似乎也不妨碍找到好工作,升职加薪.但程序员这个工种则稍有不同,因为程序,尤其是高级语言,基本上都是由英语和数字表达式构成的.英语对于程序员十分重要.我的大学本科全部采用英文教学,工作时也经常会遇到外国人,和他们谈笑风生,自认为自己的英语水平比园子的平均水平高一点.下面我就根据自己的经验来说说英语的学习方法. 为什么要学习英语 学好英语你可以直

[软件人生]关于程序员的坚持与成功

给灵科弟兄的一段话: 我不希望大家照着上面说的,变得世故. 虽然有些时候,有些事情是矛盾的. 但是,我还是坚持认为,保持自己,可能比随波逐流更重要,如果你真得想成为程序员中的翘楚,而不是被众人淹没. 高潮和低谷都是会有的,高潮期往往很短暂,而低谷期往往很漫长,不是感觉的漫长,而是实际上的漫长. 但是,如何在这个期间增强自己的能力,增加自己的积累,尤为重要.大多数人都是因此而转行或者从此默默无闻的. 虽然不代表坚持了,一定会成功,但不为了成功,我还是建议坚持. [软件人生]关于程序员的坚持与成功,

周鸿祎谈程序员创业

原文链接:http://geek.csdn.net/news/detail/45409 昨天与大家分享了自己的创业经验,得到了很多程序员的鼓励与支持,诚心感谢大家的共鸣!由于极客邦SOHO项目开始不到半年,怕对各位程序员有所误导,特意找出周鸿祎在接受媒体采访时分享的程序员创业经验,大家一起努力,从一个小程序员干出自己的一番事业!正文如下: 程序员创业的特别之处 关于程序员创业,我之所以愿意谈我的观点,是因为我是程序员出身,也是从小公司做起来的,我自认为对待很多程序员个人包括共享软件作者和一些小网

分享8年开发经验,浅谈程序员职业规划

原文出处: 风尘浪子 在中国有很多人都认为IT行业是吃青春饭的,如果过了30岁就很难有机会再发展下去!其实现实并不是这样子的,在下从事.NET及JAVA方面的开发的也有8年的时间了,在这里在下想凭借自己的亲身经历,与大家一起探讨一下. 明确入行的目的 很多人干IT这一行都冲着“收入高”这一点的,因为只要学会一点HTML.DIV+CSS,要做一个页面开发人员并不是一件难事,而且做一个页面开发人员更容易找到工作,收入比普通的工作还要高一些,所以成为了很多高校毕业生的选择.如果您只是抱着这样一个心态来

谈程序员的自我修养

最近,无意中看到一本书,叫作<程序员的自我修养>,书名很吸引我,翻开看时,却发现里面的内容多是有关Windows底层技术的介绍,比如编译器.链接库的原理,运行库的实现等等.可能是自己不常做Windows编程的缘故,便觉得索然,不愿再往下读了.反而是这书名倒让我起了些意见,明明应该叫作"深入Windows开发核心"之类,却被冠以"程序员自我修养"的名字,确有些言过其实了吧. 我也曾写过些文章,多是教程序员们如何摆弄新鲜技术,或是谈些有关职业与个人发展的话题

也谈程序员的自我修养

最近,无意中看到一本书,叫作<程序员的自我修养>,书名很吸引我,翻开看时,却发现里面的内容多是有关Windows底层技术的介绍,比如编译器.链接库的原理,运行库的实现等等.可能是自己不常做Windows编程的缘故,便觉得索然,不愿再往下读了.反而是这书名倒让我起了些意见,明明应该叫作“深入Windows开发核心”之类,却被冠以“程序员自我修养”的名字,确有些言过其实了吧. 我也曾写过些文章,多是教程序员们如何摆弄新鲜技术,或是谈些有关职业与个人发展的话题,但对于程序员们的生活以至修养却从未敢说