去年夏天,已经40岁的独立IT 顾问Michael Vu 发现自己正处在人生中一个尴尬的时期。他和美国一家大型零售商签了三个星期的企业报表项目合同。由于工作进展很顺利,他们的合同得以延续,Vu 突然进入了 Cobol 的世界,没错,是Cobol,这个曾在80年代红极一时的恐龙级编程语言,以超复杂语法以及超长代码而著称。
虽然 Vu 从来不曾用过 Cobol,却冒过学习 Cobol 的念头,在二战后生育高峰期出生的这一代人即将大规模退休的时候,Vu 看到了机会,他想,即使这代人中只有 0.1% 的人是 Cobol 程序员,那也是个很大的机会。
随着项目进展,Vu 获知,该零售商使用 Cobol 已经超过10年。这个项目的下一个阶段将用到 Cobol。Vu 以前学的用的是 C 和 C++,于是他立即投入 Cobol 的学习中并很快获得了能使他在这个组织中体现更多价值的技能,Vu 说,我从一个普通的对业务毫不知晓的程序员,发展成为一个能够在他们的代码基础上萃取业务知识,并因此获得该公司依赖的人。他现在花30%的工作时间用于 Cobol,并期待继续保持这个比例,甚至更高。
对 Vu 来说,使用 Cobol 就象发现一门失传的艺术,Cobol 为我带来的震撼是,它仍被大量地使用,即使我的客户正在用着那些最新的 Enterprise Java,C++ 或 VB。这意味着对 Cobol 即将死亡的报道是被大大夸大了的。根据 Micro Focus 的 Arunn Ramadoss 的说法,世界上有75%的商业数据仍使用 Cobol 进行处理,90%的金融交易使用 Cobol。
鉴于 Cobol 的广泛使用,要更换这些代码代价将非常高,相反,很多公司正寻求将 Cobol 同新的程序进行集成。然而那些最有经验的 Cobol 程序员正在死去,或退休。2007年,Micro Focus 对客户的调查显示,75%的 CIO 声称他们在未5年需要更多 Cobol 程序员,73%的 CIO 发现要找到一个训练有素的 Cobol 程序员越来越难。
Gartner 的 Dale Vesshio 说,毫无疑问,现在,要找到一个未到退休年龄的 Cobol 程序员有一定难度,在2004年,Gartner 曾统计那时的 Cobol 程序员约有200万,这个数字正以每年5%的速度递减。未来10年,Cobol将很快走下坡路,随着二战生育高峰人群的退休,人口补充严重不足。
Vu 的经历显示,对那些愿意学习 Cobol 的IT人士来说,这是一个机遇,虽然。这个机会能持续多久还是个疑问(请参阅以下这篇文章 "Cobol: Going, but when?") 。
IT 服务公司 Murphy International 的 Nate Murphy 说,我们对 Cobol 程序员和使用 Cobol 的公司做了调查,发现目前 Cobol 就业市场包含以下两种类型:
第一,在旧的 Cobol 代码和新程序之间充当桥梁,这种工作要求人们懂 Cobol,懂那些老 Cobol 程序员所依赖的商业逻辑,同时动新的编程语言,如 Java。
第二是维护旧的 Cobol 代码,并编写新的 Cobol 代码。
前者是一种有趣的工作,Ramadoss 说,Cobol 并不止于 Cobol,你可以将它同任何现代技术集成。随着面向服务的架构的出现,企业能够更容易地重新利用他们的 Cobol 代码。
66岁的 Murphy 曾在大型机和 Cobol 领域工作了几十年,他从 SOA 以及 IBM 的多开发语言运行环境中看到了 Cobol 的复苏。他说,现在,你可以为 Cobol 扩展或增添其它基于 Web 的功能,你可以扩展他们的功能而不必编写新的代码。
与 Cobol 相关的另外一个工作类型是维护旧 Cobol 代码或者编写新代码,一些公司将这些工作离岸外包给诸如印度一类的国家,尤其是维护旧 Cobol 代码。也有不少公司会在美国境内保留一定数量程序员,尤其当他们的工作对业务非常重要的时候。
28岁的 Stacy Watts 就在这个职位上,她是位于 Des Moines 的 Nationwide Insurance 公司的高级开发工程师。她已经写了7年 Cobol 程序,去年,公司安排她远程督察一个位于印度的开发团队,Watts 将程序规划好,然后将具体的代码工作拆分给那些印度的程序员去写。Watts 说,她并不担心外包公司抢走她的饭碗,即使算上离岸程序员,我们仍然没有足够的人将所有的活做完。另外,她将领导印度团队的工作视为管理角色。
虽然 Watts 在学校学过多种编程语言,包括 VB,C 和 Java,她最终被 Cobol 所吸引,她说,Cobol 最我来说是一种通往大型机的简易之路,这对我来说更有意义。Cobol 程序员经常以容易保住饭碗作为选择 Cobol 的原因,今年30岁的大型机程序员 Brian Vance 5年前开始为 Ohio 洲,Columbus 市的 Grange Insurance 公司工作,维护,升级旧 Cobol 代码,如今,他正为该公司位于其他洲的分支机构编写新 Cobol 代码。
这个公司的20个 Cobol 程序员中最年轻的一个,Vance 非常看好这个工作的安稳性,他说,我知道这是老人们的地盘,我高兴成为这个市场中年轻的一员,老人们在退休,没有人能接替他们,所以我觉得我的工作非常安全。
位于 Indianapolis 的 Sallie Mae Inc 公司的31岁 Cobol 程序员 John Walczak 也对自己工作的安稳感到满意。他从 East Illinois 大学毕业以后,曾想做 Web 开发,但 Sallie Mae 聘请他开发 Cobol,并许诺将让他在公司里到处跑跑并做点其它事情。
过了几年,他果然有了个机会加入到一个团队做 Web 开发,但出乎 Walczak 意料的是,他并不喜欢那个工作,我以为是设计网页并作图,但那是别人的工作,我要做网页背后的代码工作,使用 VB 或其它 .NET 代码。最终,Walczak 重返 Cobol 开发。
现在,公司说服 Walczak 做更多衔接性工作,因为已经做了8年,Walczak 对整个系统了如指掌,他们让我在项目开发和设计上运用这些知识。问题是,我不能保证自己会喜欢这个新工作,我喜欢编程,喜欢自己的两只手摸着键盘,他们想让我干别的,不才不乐意。