前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一个“码农”自述的血泪史:当了35年程序员,我最大的遗憾就是没抓住机遇转行

一个“码农”自述的血泪史:当了35年程序员,我最大的遗憾就是没抓住机遇转行

原创
作者头像
JAVA高级架构开发
修改2018-10-29 17:00:44
1K0
修改2018-10-29 17:00:44
举报
文章被收录于专栏:JAVA高级架构开发

注:这是一个“一子错,满盘皆落索”的故事。兢兢业业干了35年的程序员,最后却认识到,程序员的力量太过微小。无论你写程序有多厉害,你都很难有权力真正改变一些失败的产品、失败的项目。

尤其是当他看到,当年跟自己同上节目展示开发软件的Mike Slade,最后走上管理层,创立了包括ESPN在内的一大批公司,成了乔布斯的好朋友,那种失落更是莫名的强烈。至今都对自己当初贪图安逸、没有走上管理层而懊恼,走技术管理还是继续当程序员,这是个问题?

约摸20多年前的时候,我面临着一个人生的交叉路口。当时我的第二家公司正在走下坡路,我们给一家出版商客户开发了五年的Deltagraph软件项目终止了,因为对方想要转移到方兴未艾的互联网世界。当时的我当了13年的程序员,其中有9年左右也身为管理层参与经营公司。

我不想再兼顾这两种工作了。此前在85年到87年期间,我的第一家公司不仅开发了一款新的电子报表制作软件,还自己搞定了软件的发行工作。我领导公司,接受媒体采访,维护和投资人的关系,基本的公司事务都是我在做,同时我还是全公司的3个程序员和UI设计师之一。到了87年初终于成功发布产品的时候,我紧张兴奋得最终进了医院。想要同时干好领导和编程,实在是超负荷的工作。

到了1994年,当时我有机会选择职业方向,可以进行技术管理也可以继续当程序员。我选择了当程序员,因为工作更简单。今天我才明白,自己的选择有多么地错误,尽管我在当程序员的20年间也参与了许多很棒的项目。如果当初选择了首席技术官、首席信息官、工程副总裁这样的路线,那将是好得多的决定。

如果你依然在编程的世界里迷茫,不知道自己的未来规划,可以加入JAVA架构学习交流群:614478470 里面可以与大神一起交流并走出迷茫。进群免费领取学习资料,看看前辈们是如何在编程的世界里傲然前行!群里不停更新最新的教程和学习方法(进群送JAVA架构视频资料),有想学习JAVA的,或是转行,还有工作中想提升自己能力的,正在学习的小伙伴欢迎加入学习

1995年前后,我在旧金山湾区工作了一年,其中后半年是在苹果公司。苹果公司当时看起来快要倒闭了,我不想看着自己最爱的公司分崩离析,于是就离职回了德州。

那时的我太年轻太天真,乃至大错特错。苹果公司在一年后乔布斯回归之后东山再起,互联网风暴也在那时开始席卷全球。

作为一个经验丰富的程序员和领导者,我完全明白开发一款产品是怎样的一个过程。我们曾经做过九次应用的重大发布(major release),所有软件的核心都是我写的,都不需要后续加修正程序——反正当时补丁也很难写。我摩拳擦掌,心想那些公司是多么需要我这样的人才。一旦有机会坐到高位,我就可以平步青云了。

我的姐姐也在30年前开始了她的程序员生涯,但她在工作的第一年就跳到了管理职位,此后在一个大公司当副总裁,一干就是15年。我几年前在一家旅行社工作,其母公司的CEO就是15年前干程序员起家的。当然这类管理工作可能很困难也没啥意思,但他们的报酬要好得多。我姐姐的资产大概是我的10倍。

这些年来,我认识到程序员的力量太过微小。无论你写程序有多厉害,你都很难有权力真正改变一些失败的产品、失败的项目。我当时就是没看明白,作为一个程序员(乃至建筑师这样的岗位)的晋升空间有多么小。在这样一个干苦力的岗位上,你改变事情的力量注定是微乎其微的。再算上管理层在财务上的福利、更有可能深入参与公司IPO以及其它种种可能得到的机会,选择当程序员,就意味着你必须满足于开发好产品,其他就别想太多了。

这些年来,我工作过或作为顾问咨询过的那些最差劲的企业,基本上都是因为他们的技术管理层的不称职,甚至是彻头彻尾的技术白痴。这类公司简直多到写不完。

举个例子,一家银行的工程副总裁曾声称,作为一个管理者的他不需要懂得那些技术细节,因为他管理的是人,而且仍然认为自己可以做技术方面的决策。同一家银行的首席信息官从来不相信他手下跟他说的话,反而把卖方的话全盘兼收。我们当然都知道他从中获得了提成,虽然我们买的都是根本用不到的东西,他却总是写文章称赞那些产品对我们来说有多大用处。我离开那家公司一段时间后,他也被开除了,但转头就又找到了另一家公司里类似的职位。

我做过最差劲的一份工作,恰恰是我本以为会是最好的一份。当时一个已创业一段时间的企业在他们的领域里取得了一定的地位,他们和定位不同的竞争对手都想占领更大的市场,于是竞争开始白热化。

我被雇佣为第二程序员。原来的一个程序员和经理的职责是开发一个新的在线商店, 因为原来的商店网站太不灵活,而且访问量一上去速度就变慢。整个公司没有其他技术方面的领导,CEO和另两个创始人在技术方面没有任何经验和知识。另一个程序员一直在吹捧自己的后台代码写得多好,管理层也支持他。

我开发了一个前端,架设测试,每天签入代码。当我觉得是时候把我的代码整合到系统中时,我发现另一个程序员在10个月里啥也没干。我把这件事告诉经理,他却对我说,“他在做到完美之前从不会签入代码。”。然而,其他人都不觉得这种做法很愚蠢。在接下来的两个月里,我一直努力让三个创始人聘请真正能做事的程序员(我认识几个合适的人),但他们很害怕做出改变,也不肯承认聘请那两个人从一开始就是错误的选择。最终我选择放弃,离开了那家公司。

一年后,那家公司在仍然没有从那两个员工那里看到一点进展,于是终于决定开除他们。他们尝试去找一个咨询公司,但仍然一无所获,当时已经为时已晚。他们的竞争对手已经成了估值十亿美元的上市公司,我还在电视上看到过他们的广告。而每次在电视上看到他们的广告,我都想拿一只鞋子砸过去。那时候的我们万事俱备,就差一个在线商店,和一个真正的技术领导人。如果当时的我身处管理层而不是一名小小的程序员,我肯定会让整个公司走上另一条路。但我只是一个程序员。

这样的事还有很多,但在技术上,你并不能改变人们做事情的方式,除非你有那个能力、权力和机会。有了这些条件,并且找到正确的位置来发展,你才有可能摘星揽月。

1987年年初,我在电视节目中展示自己开发的Trapeze软件,上节目的另一个展示人是Mike Slade,他是Excel 的产品经理。当时的我还太年轻,以为他也不过是一个无名小卒。然而他后来创立了一大批包括ESPN在内的公司,曾在苹果公司担任许多领导角色,成了乔布斯的好朋友,并创立了自己的风投公司。

但是,今日的我还是一个程序员,籍籍无名的技术工。我甚至觉得,我永远都不会有真正退休的一天。还好我技术不差,现在的这份工作就是以前的一个经理招我进来的,因为他了解我的能力。但在我老到做不动之前,我仍然只是一个小小的程序员。

干了35年的程序员,保证按时完成任务,我也依然觉得推出新产品是很有趣的工作,这些年我也有机会开发了许多不错的产品。但是,我仍然能够感受到对当初贪图安逸、没有走上管理层的懊恼。

在某种程度上,当程序员是一份简单的工作。然而,一想到我曾经距离互联网风暴的中心那么近,离乔布斯回归那么近,我也有一定的领导经验,我就无法不懊恼,我完全可能是另一幅模样。

所以,我真的很后悔没有直面挑战。当然,如果走的是另一套路,我就会失去写代码的乐趣,也无法感受写不出来的绝望感。但是在人生的分岔路,我选择了行人稀少的那一条,它改变了我的一生。现在我大概明白了。

这里推荐一下我的JAVA架构学习交流群:614478470 ,想要学习Java高架构、分布式架构、高可扩展、高性能、高并发、性能优化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分布式项目实战学习架构师视频都有整理,送给每一位JAVA小伙伴,有想学习JAVA架构的,或是转行,还有工作中想提升自己能力的,正在学习的小伙伴欢迎加入学习。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 Redis®
腾讯云数据库 Redis®(TencentDB for Redis®)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档