程序员的职业前景会比较好

读过一篇文章,说近来美国景气在不断回升,就业人数也不断增加,但就业人口有一个明显特征,就是社区大学(相当于日本的“短期大学”,也许相当于国内的大专?)毕业的比例越来越少。从具体的职业角度来看,事务性职务正在逐渐被计算机所取代。

随着美国的系统化进程的不断进展,事务性职员所从事的进度(schedule)管理、票据整理等工作正逐步被计算机越来越多地取代。而且,不只是这类低端工作,就是如会计、律师、医师、分析师和客机飞行员等传统的高端工作,也正在逐渐地被计算机系统侵蚀。众所周知,产业机器人以其精准、迅捷、能耐受长时间劳动以及绝对服从命令的特点正逐步取代产业工人的职业;会计系统已经存在了好长时间;一些比较标准的法律事务,也可以用计算机系统代替;飞机的起飞、巡航和降落都可以由电脑自动完成,也许主要需要飞行员的地方,就是驾驶飞机从登机口走到跑道上去,以及降落后从跑道回到到达出口?医疗方面,由于各种病症都有一些典型特征,医疗数据库正逐步完备,因此,计算机疾病诊断系统正在发挥越来越大的作用。IBM的人工智能系统“华生”,具有高级自然语言处理、信息检索、知识表示、自动推理、机器学习等功能,曾在智力问答电视节目中击败过两位冠军,后从事金融分析工作,偶尔还化身为主厨开发出营养、美味的菜单。近来,IBM正在利用华生无与伦比的大数据处理能力,进军医疗产业。这也将是华生的主战场和最终目标(而且这也更贴合其“华生”的名字)。

因此,在这样一个越来越自动化和智能化的时代,我们人类该何去何从就成了一个越来越紧要的问题。我觉得,自己所从事的程序员(软件工程师)这一职业,倒是会有比较好的前景,因为我们可以选择站在这一系列的事物的制高点上。因此,要学好编程的核心技术,并在此基础上学习一些人工智能、机器学习等方面的知识。

目前我供职的公司是一家比较传统化的日本企业,很多手续还需要在纸上盖章。最近开发了一个系统,在部署时,有一些令人啼笑皆非的情况。该系统分析、整理客户的交易数据,并发送到分析平台去。公司当然希望尽可能快地提供交易报告给客户,虽说不必如交易一般分秒必争,可也是越快越好,因为这关系着客户体验和公司形象。我把系统从最初需要数日(因为作为数据源的数据库有很多问题,且没有优化!)的处理时间,通过运用多线程处理、内存数据库等多种技术逐步缩短到10分钟以内。在我们讨论是否应该宁可先少包括一些数据也要提前10分钟执行数据处理时,负责部署的一方(公司的子公司)提出,在出现意外时,处理流程应该是这样的:数据中心发现错误;数据中心打电话给负责部署和支持的团队;负责支持的团队初步判断一下情况,并打电话通知我(或其他成员);我要求系统记录的处理日志和生成的数据文件;支持团队把请求通知给数据中心;数据中心提供这些文件给支持团队;支持团队把文件发送过来……由于人不可能总在自己的位子上不动,可能还需要做其他工作,或开会,甚至是上厕所等,因此,每一步都可能发生10分钟甚至半个小时以上的延迟。这样下来,真正传达到我这里就不知道是什么时候了。我的设计是在系统处理完后,立即检验结果,并把检验报告通过电子邮件发到我所在的团队。可是,数据中心不能发电子邮件!不知道他们这样做是真的出于(毫无必要的)安全性的考虑,还是为了让这一大群人有工作可做?这显然是不能接受的,好在数据中心可以拷贝文件,于是设计改为:在系统处理完成后,把相关的所有文件都拷贝到另一台由我们所控制的服务器;我在服务器上运行一个监控进程,发现这些文件后,立即进行检验并把检验结果通过电子邮件发给我所在的团队。这样,就不用为了这点事每天疲于奔命地折腾了。也许像我这样用软件来代替人工有点冷酷(被代替的也包括我自己的一部分),可是不这样的话,不仅是毫无必要地浪费公司的经费,而且更是对生命的极大浪费!

因此,我们要做的不是苟且地通过做这些没完没了的琐碎工作而混日子,而是要不断地提高自己的能力,做更有创造性的工作。如果有一天绝大多数的工作都被电脑所取代,人类会何去何从?如果财务自由了,到时候会不会有新的财务危机?这些就不是我能想清楚的问题了。但人生如梦,本虚幻不实;时光如电,我们当“如救头燃”般地珍惜时间。因此,到那个时候会如何本身并不重要,重要的是现在如何。子曰:“朝闻道,夕死可矣。”就不必为未来的世间琐事而烦恼了。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注