藉此谈谈15年Java开发的心酸历程

能够有时间在CSDN上瞎写一篇非技术方面的文章,实属侥幸。旧项目正在上UAT的过程中,新项目暂时还未收到招投标的结果。所以出乎意料的闲来无事。于是便有了这一篇流水账一般的闲谈。

然而就在开始吐槽之前,我还想要吐槽一下大公司的IT安全策略,搞得我一副封面图都save不下来,因此本篇文章就此没了封面,实在抱歉。

我今天42岁,焦虑了10年。在我32岁的时候就被传闻的“程序员的工作生命终止在35岁”的言论而搞得郁郁寡欢。心想着是不是应该转行了,或者说怎么样提高一下自己的生存能力。或者去跑滴滴,送外卖才是我35以后的唯一出路。

这的确挺蛋疼的,这样的焦虑也许出自“华为辞退35以上的开发”,又或许出自对那句话的深思。例如35的脑子肯定干不过刚出炉的新人,身体状况容不得996或者通宵达旦上线产品,亦或者说工资随着资历增长后已经不匹配自己这身技术, 等等等。然而,10年后,我仍然坐在电脑前,整日的敲代码,又或者研究一些棘手的项目bug如何优雅的解决。任然会有些许焦虑,任然会胡思乱想,不过已经不太多了。毕竟现在生活的压力已经不止于此。

在此还是跟大家介绍一下这么多年的心路历程,以及如何正确应对中年程序员的焦虑。

我学历不高,大专而已。朋友调侃我,脑子好使,就是当初不思进取,上学的时候去偷牛去了,所以才混一个大专学历。而我自认为,我脑子的确好使,而学历是我的硬伤。而自己常常把这个硬伤归咎于自己上学的时候脑子没开窍,大器晚成。也遗憾大学终于开窍了,但是无奈于家里穷,上大专的钱都是借的,就没办法去争取所谓的“专升本”。就彻底摆烂在一个大专院校中。

大学毕业出来前三年也是几经挫折,做过司机,守过工程,送过货,甚至在农家乐打过工,还做过网管,仓管,卖过品牌女装。最后终于开始思考自己这一辈子要怎么过。记得那个时候想的是,月薪5k,无房贷车贷就这么安安稳稳的过一个贫下中农的生活也挺好。但是的确也不满足于现状,加上年少轻狂梦想多。终于,在还清大学欠款后,又死皮赖脸找家里拿了1W多,参加了Java开发培训。最终在学习一年后,正式从业。

学习Java技术的日子还是挺怀念的,认识了一帮有同样爱好的朋友。在学习班上,我还是挺努力挺认真,而且成绩可以说一直是顶尖的前三。所以也有幸跟着老师做一些小项目练手。

后来经过一些程式化的简历包装,面试技巧培训等等。进入了第一家公司。还记得在那个公司做的第一份跟项目相关的事情,就压根儿不是编码。说白了,就是运营实施。整天四川各个省市县的跑,去收集人家那个点从前的业务数据,然后交到成都总部来做省集中。就这么没日没夜的跑了1年多。在那时为了数据校对和升级中脚本运行,三天三夜没有合眼,凭着过人的身体素质加上一瓶一瓶的红牛撑了过去。昏昏沉沉回去一睡就又是三天。

好不容易熬完了省集中的项目实施。终于可以接触代码了,也就是一些修修补补。实在觉得乏味,感觉自己在学校学的东西都快还给老师了。这个时候三年已过。终于鼓足勇气,投了三年前投简历面试未能进去的一家外企。听说这家外企就是所谓的“养老院” (去年这家外企基本上就没有留多少人了,大家清楚经济形势和政治背景。很多外企都逐渐撤资出了中国。这就是不要相信所谓的养老的企业)。因为自己一直比较自卑,知道自己是半路出家的比不得人家专业的强。所以在项目组十分努力,得到了领导的赏识。

跟着领导混的挺愉快,学到了很多东西,也结识到了很多兄弟们。然后又是三年多,领导跳槽了,在走之前为我铺平了道路,让我做了他的位置。于是终于在入行6年左右做了个小领导,全面负责一个项目的Change Request这块的项目安排跟踪计划等。刚开始,下面做事的人都是比我经验丰富的兄弟 ,怕不能服众,夹着尾巴做人。后来发现这些哥们根本就不想做这个位置,人家轻松做事愉快做人比我天天为了项目组跟国外的那些个印度管理撕逼轻松多了。

这个项目组最繁荣的时候我手底下有三十来号人,大多数都是从intern转正的刚毕业的小伙。从我手上带出来的人也至少有十多个。所幸的是那个时候的大学生,都还是挺努力的,不需要自己花太多时间照顾。给东西,给指导,给方案,人家都会一一遵循着做的头头是道。所以后来他们中也不乏混的很好的。所以说,师傅领进门,修行靠各人。为师的也只能把自己的经验和技术不吝的倾囊相授,剩下的都只能靠做徒儿的自己拼命了。

又做了三年多,公司开始走下坡路了。最明显的征兆就是,公司开始要打卡了,要严格抓考勤了。各种屁事儿的会也越来越多了。加上做了几年存管理,自己都快跟技术脱节了。于是不得不给自己想着退路。最终给我推了一把的也竟然是公司。

还记的那年,我们这边项目组陆续的将人遣散,其方法是把人调到其他项目组,甚至是跟自己技术没有关系的其他部门,让其自生自灭。变相的把别人赶跑。终于轮到我,给我调到了一个很虚的项目组,管理也虚,项目也需。那时候,我老婆怀了老大,正是7个月的时候。新项目组的老大要我出差(之前跟项目团队领导说起过,希望在孩子满月前都不要安排我出差,家里好有个照应)。突然发现管理层的虚伪,明明答应过暂时不安排出差的,结果逼着我要走。无奈,愤怒离职。正好借着之前的一个兄弟的推荐到了另一家芬兰小外企。

进这个小外企的时候跟领导说起过,做过几年管理。但是因为喜欢技术,还是不想要自己技术荒废掉,希望不要再做管理,更多做技术方面的事情。所以刚进去一年,真的学了好多东西,Docker,Apache Kafka,Rancher,Jenkins, Active MQ...这些以前没有接触过,或者说没有机会接触到的东西,我都开始有了接触学习甚至实践的机会。真心感谢这公司给的这么好的学习平台。而且也体会到了,真正最好的学习环境还是在工作中,实践出真理。所以之后珍惜每一次工作中新知识的实践。

在这个公司工作的时间里,有欢笑有泪水,也因为表现出色又做了项目组长。虽说是技术管理一起抓的这种。但是随着我们老板因为发展,把整个公司卖给了新东家,新东家更大,也让我们重新签署了合同。但很多小伙伴选择离开了公司寻求更大的发展。以前那种和睦的氛围渐渐消失,留下来的老同志们开始内斗,公司里面都是勾心斗角,然后又是走了一批。我算撑得久。最终的契机是一个女同事争得上位,颐指气使风光无限。而我,因为这几年里面意外的老二也出来了,老婆又意外的怀上了老三。出于对自己前程的忧虑和对生活的焦虑,不得不另谋高就离开这个伤心地。

终于,又跳到了一个大型外企中。但是再也不想着“养老”了。技术才是硬道理。拼命的卷技术,拼命的作项目。我可以说,来到这个公司以后两年内做的代码,是我曾经这么10多年的总和。工资的确也上去了一点。勉强能够养活一个老婆三个女。

不慎开心,因为还是找不到当初第一家外企公司里面其乐融融的同事关系。虽然没有第二家外企小公司里面的勾心斗角。但是跟上下级同事还是有特别大的隔阂。加上年龄40后。越发的忧虑。越发的珍惜现在的工作机会。加上最近两年行业不景气,大经济环境更不景气,要知道我失业代表一家都喝西北风。于是不知觉的就非常努力。心里会有小失落,觉得以前自己做管理。现在一语成疾的做了高级码农,而且是任劳任怨的那种,技术的确慢慢上去了。心态崩了。

不过还好,感谢老天我还一份工作可做。看看今天8月以后的失业率都不报道了,我还要啥自行车?这就是我这么16年的工作历程。再次真切的的提醒想要入行的伙伴们,忠言逆耳但是希望你们能够明白下面我总结的血和泪的经验:

1. 初入码农江湖,不要挑,只要多做,每一份挑战都是你今后出头的筹码。

2. 不要怕人骂你,关心你成长的人才会骂你,多从骂声中总结得失。

3. 顺其自然,代码也罢,管理也好。多从自己岗位里面疯狂吸取经验,不要为了做而做。

4. 每个项目后多总结,找出自己做的好的和做的不好的,有则改之,无则加勉。

5. 不要轻易跳槽,每个公司培养人才不易,当然是有机会优先考虑自己人上位。

6. 也不要盲目等待,如果公司真的不行,早点溜之大吉,换个好环境总比呆在野鸡窝里强。

7. 做人谦卑,不要倚老卖老,大家都是打工人,装什么二五八万。

生活不易,我相信不管刚毕业还是老江湖都看到眼前国内的窘迫,工作不易,且行且珍惜!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值