“老子有技术,老子天下无敌!”A公司要做一个运营管理系统; 客户给的需求不是很明确,但项目已经签了,不明确也得做; 于是几个程序员尽可能考虑将来的变化,做出来的东西还是挺灵活的, 有什么出格的要求,改改配置,稍微加点业务代码,也能让客户满意; 可是,时间是把杀猪刀! 经历过数次合同续签,无数复杂的业务,被仓促的追加进来,系统已经不受控了; 这个时候来了个新程序员, 理了理代码,发现一团乱麻,根本就理不清; 于是跟老板说:必须大规模重构! 老板早就看原来的团队不爽了,于是“临危受命”这个新程序员来操刀重构; 在改东西的过程中,新程序员去问老程序员:“这个流程引擎怎么做的这么糟糕呀!” 善良的老程序员会跟他说:“糟糕毛线!这是一个星期做出来的!你一个星期给我搞个更好的出来看看?”; 心存芥蒂的老程序员会说:“确实做的不好,还好你能来改,改好就好了!” 后面的结果,可能是这个程序员根本就搞不定这个重构工作; 也有可能搞定了这个重构工作,但时间一长,也被老板“多、快、好、省”的要求带到恶性循环中去了; 程序员有个非常关键的状态,就是:“没有什么业务功能是我满足不了的!” (你可能从没说过这句话,但你想想,是不是潜意识里经历过或正在经历这个阶段呢?) 处于这个阶段的程序员,觉得自己手里拿着技术的“锤子”,看见什么都是钉子! 相信技术能改造眼前的一切,乃至于改造世界;
注意:说到这里,必须澄清一下; 我并不是反对程序员改造世界的意愿, 相反,我特别敬佩这样的程序员,真的是他们在推动技术的进步,环境的改善; 是他们创造了这繁荣的技术生态! 碰到这样的程序员,我大多数时候还是持鼓励的态度,甚至细心跟他们探讨执行的细节; 但值得警醒的是: 一定要放下“老子有技术,老子天下无敌!”的傲慢心态; 扎到环境中去,仔细触摸环境中的每个细节,掌握足够的信息之后,再动手改造环境; 也别因为一两次失败,就放弃初心,混到社会的大染缸里去,破罐子破摔,爱咋地咋地了; “这家公司已经不能再给我足够的舞台和成长空间了!”再讲另外一个现象 程序员进入一家公司,一两年之后摸清了系统的技术和业务; 脑海里就会浮现一个问题:“这家公司已经不能再给我足够的舞台和成长空间了!” 在加上这段时间内工资增幅也不是特别明显,于是就换工作; 换一家公司,可能是同行业,也可能是不同的行业; 学习新的系统技术和业务,再加上跟团队磨合,一两年之后,又出现了同样的问题! (人力碰到这样的人,总是忍不住要问,“你前面跳槽好频繁呀,是为什么呀?”) 又进入了如前一个故事所讲的同样的恶性循环中; 直到年纪大了,心灰意懒,找一个相对清闲的工作,打发自己剩下的职业生涯。 这里最关键的一个问题,就是你要怎样的舞台和成长空间? 大部分程序员是要技术上的成长空间和更多的资源调配权力 然而一两年的时间, 你真的把先进的技术应用到你所从事的行业上了吗? 真的通过技术给产品、给公司带来了质变吗? 一两年的时间, 你真的做到了让领导和团队充分信任你? 让你的领导毫无保留的跟你共享一些信息?(团队中信息不对等是权力产生的关键) 让公司可以不计后果的让你调配资源去做你想做的事吗? 我想这么短的时间,要做到这些事,还是很难的; 造成这个现象的最关键的因素还是内心的傲慢! 傲慢会束缚你的眼界和思想,最终造就无知。 同样的澄清:我不反对你对未来的追求,我只是想让你再冷静一些,仔细思考一下,自己想要什么色彩的未来 “新手会告诉你有一百种可能,老鸟会说只有两条路可走”碰到一个系统性的技术问题, 有些程序员,想到一个解决方案, 认真思考过,该方案没有任何问题, 于是就沾沾自喜,舍我其谁,马上动手去做了; 另外一些程序员,他们会想到很多解决方案, 于是沾沾自喜,挑一种自认为最好的方案,也马上动手去做了; 只有达到一定境界的程序员 才会坚定的跟老板说,只有通过A或者B方案,才能真正、彻底的解决这个问题; 前面两类程序员,可能永远也不会认为自己傲慢无知, 然而在当时那个状况下,他们肯定认为自己有能力解决这个问题 而且用自己的方案解决这个问题肯定是正确无误的! 软件学科是一门经验性的学科, 说白了,能力是踩坑踩出来的, 经验在这个行业的顶尖人才比拼中所占的比重是非常大的, 永远不要轻视那些持续投入,历经无数大型系统软件开发工作的老鸟! 你可能看了很多书啦,四人帮写的设计模式也读了好几遍了,说的很在理呀,但是又怎样呢?! 同样的澄清:我不是鼓吹资历!我是强调多实践!放下傲慢的姿态,多多实践! |
|