偶然在网上看到这样一个故事:John和Bill一起到山中探险,忽然他们发现一只老虎正深情的望着他们,John撒腿就要跑,Bill却迅速的从背包里拿出一双跑鞋穿在脚上,John看到后气急败坏的对说Bill“你穿什么鞋也跑不过老虎的”Bill同情的看了他一眼,回答说“我干吗要和老虎比,我只要跑过你就够了。”
大笑以后不免想起John的境遇是不是有点象中国的程序员呢?我个人习惯把软件从业人员分为初级程序员、高级程序员、系统分析员和项目经理四大类的方法,我把优秀程序员的标准分为职业习惯和个人能力两方面,职业习惯包括文档编写习惯,规范化、标准化的编码习惯、软件测试习惯、模块化开发习惯等,个人能力包括团队协作能力、需求理解能力、学习和创新能力等。我接触过的几百个程序员后的感觉,除非那种天生适合编程的人才能成为行业的顶尖高手,按照以上标准绝大多数程序员只能归入“平庸”之列,所以我们这里的讨论主要是基于大多数“平庸”的程序员的。
故事中的John能不能活命跟三个问题有关:老虎、Bill、自己,中国程序员的困境也来自三个方面。
困境之一:老虎的威胁。程序员要面对的饿老虎实在不少,比如说老板,好象老板就是程序员的天敌(当然自己当老板的程序员除外,呵呵),什么“不懂技术却指手画脚”、什么“得到与付出不相当”似乎是程序员最常见的牢骚,这个问题不可能得到真正的解决,在这里就不详细讨论了。
困境之二:Bill的竞争。一般说来中国的程序员大都是吃“青春饭”的,大部分程序员的黄金时代是24~28岁。到了30岁左右,一批又一批年轻程序员会给你带来巨大的竞争压力。首先由于软件行业的飞速发展,很多自己以前学的东西逐渐升级换代,而许多程序员由于长期于工作,学习新知识的效率必然下降。其次自己干了几年,薪水要求自然就高了,而年轻程序员工资又低、干活又快,当然会成为老板的首选;第三,30岁基本都已经成家了,要支撑家庭的生活负担,你几乎连从头在来的勇气都不会有了。中国的老话说“长江后浪催前浪、一代新人换旧人”,这个历史的规律在软件开发行业体现的尤其明显和残酷,很多程序员必然要面对的结果就是降薪乃至失业。
困境之三:自我的实力。我们都知道人最难战胜的是自己,所以自我也就是程序员需要超越的最大障碍。大多程序员都把系统分析员和项目经理作为自己的职业目标,但这些目标的达成,需要个人素质、市场机遇等多个方面的条件,太多的程序员就是在高不成、低不就的状态中蹉跎了岁月。对于系统分析员,特别需要以下几方面的素质:客户需求分析能力、系统架构与设计能力、模块分解设计能力、项目流程控制能力、项目风险评估能力等,而对于项目经理则更注重项目管理方面的能力如团队组织能力、沟通协调能力、分析问题解决问题的能力以及良好的职业道德等,而这些素质和能力往往只能依靠程序员个人的学习和努力。看到越来越多的程序员开始学习项目管理的课程,真的有点为他们担心,因为现在的项目管理培训只能停留在理论和考证的程度,既没有素质方面的训练,又缺少实际软件开发项目的案例,学习的结果远远不能达到预期的效果。
面对这许多困境,我们要如何准备好一双跑鞋,使自己跑的更快呢?我们认为一个高效的方法就是到国外软件企业工作,学习国外先进的软件开发经验,使自己成为真正的国际化人才。那么选择哪个国家作为自己学习的对象、发展的踏板呢?
我们的第一个目标当然是美国。因为美国是世界上最大的软件生产国,世界500强软件公司前10位,有8个公司的总部设在美国。但是近两年来,美国的IT业一直处于低谷,裁员和减薪成为美国软件公司生存下去的重要武器。很多具有美国名校背景的中国留学生纷纷回国发展,其中一个很重要的原因就是就业形势很差,中国程序员要去美国发展不论是寻找企业还是工作签证都有很大困难。
我们的第二个目标是印度。印度一直是美国最重要的软件外包国家,印度也因此建立了世界上最完备的软件人才培训体系。象印度学习更重要的是从教育体系上改变,我国软件学院的建立就是向这个方向上的一次尝试,虽然收效甚微,但毕竟已经迈出了可喜的第一步。作为程序员个人如果到印度发展可就不大现实了,因为印度的人力成本本来就比中国低,而独特的殖民文化使印度人并不认为“软件蓝领”是难堪的称呼,而中国程序员对此却大多耿耿于怀,所以印度也不是我们的最佳目标。
我们的第三个目标是日本。在全球IT行业全面不景气的大环境下,这两年日本的应用系统开发却一直保持上升势头。多年的发展使日本的软件行业具有自己的鲜明特点,日本的软件开发与国际通行的CMM软件成熟度模型并不完全相同,但是双方在某些关键流程上惊人的一致,比如书写技术文档。这样就实现了高效管理与严格的时间控制,保证软件的整体质量与利润率。近两年日本IT企业通过各种方式来降低人员成本,其中最主要的就包括软件外包和外国软件工程师输入,中国就是日本企业吸纳人才的首选对象。
有一些程序员因为不喜欢日本国而对赴日工作嗤之以鼻,在我们周围,有无数事例证明了只有自己足够强大才不会被别人欺负,真正爱国的程序员更应该虚心的学习别人的优点,兵法有云“知己知彼,百战不殆”,只有我们充分了解对手的优缺点,客观看待自身的问题,才能使我们中国的软件行业实现真正的跨越,超越日本,击败印度,抗衡美国。
真的希望能看到这样一天:中国的程序员能面对世界自信的说“我们是最棒的!”
您是不是该为自己准备一双跑鞋了呢?