“30年前,当我还在上大学的时候,COBOL被宣布死亡,但它仍然很强大,仍然是一种非常好的语言。”
北德克萨斯大学信息系统教授Leon Kappelman如是说。关于半个世纪前的编程语言正在强势发展,他的说法似乎是正确的:今天,银行、保险公司和其他组织仍在使用数千亿行的COBOL代码,在所有商业交易的很大一部分中,COBOL仍在使用。
但是很少有大学仍然教授COBOL,这意味着熟练的COBOL开发人员正在迅速老龄化。随着越来越多的COBOL开发人员达到退休年龄,具有COBOL技能的程序员短缺是不可避免的。
学习COBOL似乎是一个明智的职业选择。这是因为它提供了大量工作的前景,而且由于供应短缺,熟练的COBOL程序员应该能够为他们的技能获得溢价。
卡普尔曼教授表示,UNT大学的本科生有两门关于大型机COBOL的选修课程,事实证明,这两门课程几乎立刻就能获得经济上的回报。他说:“接受这些课程的学生一开始往往会比不接受的学生每年多挣1万美元左右。”
他补充说,对COBOL开发人员的需求不会消失,因为大型组织不存在替换其遗留COBOL应用程序的业务案例。这意味着COBOL职业提供了很好的工作保障。
[相关:现在谁还需要计算机科学学位?]
但他警告称,不可避免的是,这也有负面影响。“职业发展的潜力有限,所以你有很大的工作安全感——但也可能会变得无聊。”
COBOL能带来现金吗?
除了Kappelman的观察之外,目前还没有多少证据表明COBOL开发人员的高工资是由于供应短缺造成的。不过,Micro Focus的副总裁杰夫?韦伯(Geoff Webb)预计COBOL价格将开始逐渐上涨。Micro Focus是一家提供软件和咨询服务,帮助更新遗留系统的公司。他表示:“在Y2K项目中,许多公司都需要COBOL技能,因此这种突然的混乱导致了薪酬的飙升。”“我们不会再看到像那样的大幅上涨,但未来薪酬很可能会面临上涨压力。”
如果您正在考虑学习COBOL,那么您应该问的一个明显的问题是您将进行哪种COBOL工作?更重要的是,COBOL工作会像Kappelman所说的那样无聊吗?
答案似乎是,有些,但不是全部,可能是枯燥的。Webb说,总是需要有COBOL技能的人来维护现有的代码。他说:“总有一些更新需要做:你可能有一个工资应用程序需要稍微修改一下。”“这并不需要大量的工作,但需要定期进行改变。”
但他说,认为你的工作只包括维护现有代码运行的职责,这与事实相去甚远。还有很多新的发展机会。
拥有现有COBOL应用程序的公司正在扩展它们。他们为什么不呢?”韦伯说。有必要提供新东西并深化与客户的接触,其中一些将涉及到扩展现有COBOL应用程序的开发。公司不能扔掉这些应用程序重新开始,所以他们必须在这些应用程序的基础上继续发展。”
无聊的因素
有一件事可能会让您打消使用COBOL的念头,那就是它经常被那些乏味而又古旧的组织所使用。它缺乏在令人兴奋的Web 2.0创业界和移动应用程序中使用的性感新语言的吸引力。坦率地说,大型金融机构的COBOL编程生涯听起来可能相当无聊。
但情况未必如此,Alina Ungureanu说,她是一位20多岁的开发人员,去年学习了COBOL。她说:“我选择COBOL是因为它很有趣,而且与其他语言相比非常不同。”“我不认为一种语言会让你厌烦——是你使用它的活动让你厌烦。”如果你想使用COBOL,你必须能够进行开箱即用的思维。”
那么她会推荐其他开发人员学习COBOL吗?“那得看情况,”她说。“我不喜欢编写网站代码。但是,如果您不想为金融部门创建应用程序,那么我就不能推荐COBOL。但如果你喜欢创建事务性代码,那么COBOL就很有趣了。”
她补充说,COBOL开发人员确实倾向于比许多其他开发人员挣得更多,但这在一定程度上是由于雇主的性质。她说:“如果你和COBOL打交道,那将是在一家以员工为导向的大公司,所以他们不会给你低工资。”“其他语言在小公司或初创公司更受欢迎,因为这些地方的人们可能对自己的薪水不满意。”
当然,更有可能的情况是,在初创公司工作的开发人员最终会获得公司的股权,如果公司成功了,就有可能一夜之间赚到数百万美元。对于大多数COBOL开发人员来说,这种机会并不存在。
韦伯说,如果你想使用COBOL,但又不想切断自己与软件开发前沿的联系,还有另一种可能。有一种趋势是将旧的COBOL应用程序与用下一代语言构建的新移动和Web应用程序集成在一起。
“把COBOL应用程序应用到很酷的东西中去——这对一个职业来说更有趣,”韦伯说。要做到这一点,你不需要成为一个COBOL程序员,但更多的是一个懂COBOL的程序员。你还可以使用多种环境、工具和知识。”
但韦伯说,即使你选择成为COBOL专家,也会有很多令人兴奋的事情。这是由于技术变革的速度。
他说:“如果您是COBOL方面的专家,您就必须深入研究如何推进COBOL应用程序——旧的应用程序能利用多少新技术和平台。”
“因此,对于COBOL开发人员来说,未来将会有一些非常有趣的时期,”他说。
“为什么是时候学习COBOL了”这篇文章最初由首席信息官 。