2025:二线程序员的挣扎与思考

15 阅读10分钟

引言

早就想写年终总结,却因为工作和自己的懒惰一直拖着。当然也有一部分原因是,这种东西写出来终究是给自己看的——给自己看的文字,无论怎么写都浑身难受:写自身的不足,满是压力;写自身的困境,又略显矫情。但今年30岁了,无论压力也好、矫情也罢,总该留下点什么,以免日后回头时,空空如也,什么痕迹都没有留下。

一、尝试深入的方向:Three.js

年初的时候,我觉得3D可视化开发是一个比较有前景的方向。之所以这么判断,一是从沈阳本地的招聘市场来看,时不时就会有3D可视化开发的岗位,薪资对比普通前端开发要高出不少;二是随着AI的普及与能力提升,3D场景开发的成本会逐步降低——主要是模型成本和开发成本,再加上AI发展会催生更多相关开发需求,所以我认为,3D开发或许会成为未来前端的核心基础能力之一。

OIP-C.webp

我从头到尾学习了一遍threejs-journey的课程,这是一门以实用性为主的课程,涵盖了Three.js框架本身、相关底层原理,以及着色器开发。对于入门而言,这门课程已经非常完善,但结合国内相关岗位来看,目前3D可视化相关岗位主要集中在数字孪生、医疗影像和三维GIS开发领域,我对比后发现,自己仍有三个明显短板:1. 对Three.js框架的深入程度不足;2. 缺乏真实项目的实操经验;3. 缺少岗位所需的配套知识(比如GIS、Unity、相关算法等)。

学到这个阶段,我没有继续深入下去。一方面深入到项目中有点不知道如何开始🤔;另一方面产生了精进英语,打算尝试面向国外市场发展的想法🌍。

OIP-C (3).webp

二、尝试精进英语

其实在学习Three.js的同时,我就已经开始同步学习英语了,但效果一直不太理想。我发现自己无法合理平衡工作、框架学习、英语提升和日常生活这四件事,总会有一个环节出现“绷不住”的情况😩,要么耽误工作,要么忽略学习,要么影响生活。

OIP-C (2).webp

我在B站发现了一门课程——《跟我150天,保证你不看字幕听懂英文剧》,主讲人是B站UP主“脑洞部长”。这门课程的核心逻辑很清晰:UP主将多部英文剧中出现频次在10次以上的词汇整理出来,按频次排序,每期安排对应的单词和句子练习,同时根据观众的反馈,动态调整课程难度和时长,让学习者在不断重复中,熟练掌握这些核心词汇。这样一来,在听英文内容时,大部分单词都能听懂,剩下的再针对性扩展个别方向的词汇即可,门槛相对较低。

7b879f69-64fb-440d-a48f-28c2b130bd59.png

(不亏是大佬,已经更新到第137天了,长达一年的坚持👍)

这里也顺便分享一下我当时的学习方法:我会把每天学习的单词、句子记录下来,利用时光序APP提供的艾宾浩斯记忆曲线,安排复习计划。每次复习不需要深入钻研,只要走马观花过一遍就好。之所以这么做,有两个原因:1. 按照艾宾浩斯间隔复习,后期会有大量复习任务堆积,没有足够时间逐字逐句深究;2. 依靠高频重复保证记忆效果,所以不需要每次花费大量时间精读。

当然,这个方法也有明显缺点:随着复习任务越来越多,每天花费在复习上的时间也越来越长;

客观来说,这门课程和我的学习方法都很不错,我坚持跟着练了70多天,但也逐渐发现了一些问题,与我最初的目标出现了偏差:1. 缺少口语训练环节;2. 课程侧重日常实用词汇和场景,而我想要精进的是技术交流类英语,即便完成这150天的课程,也还需要花费大量时间,专门练习技术场景的英语表达。

三、尝试开发产品

因为觉得英语学习的方向与我想达成的目标(面向国外市场、实现技术英语交流)存在偏差,我在跟着课程学习70多天后,最终还是放弃了😔(现在回想起来,当时还是有些过于激进了——其实完全可以带着继续听,课程里的核心词汇覆盖面很广,只要全部熟悉掌握,对英语整体提升还是有不小帮助的)。

结合自己这段时间的英语学习经历和遇到的痛点,我萌生了一个想法💡:开发一款个性化教人学好英语的应用。

OIP-C (4).webp

我的核心思路是结合AI技术,以场景化学习带动词汇积累,让词汇学习与实际场景深度绑定、相互反馈,解决“学了用不上”的痛点,最终让用户能够在特定场景下,用英语与AI完成流畅交流。

但真正落地一款产品后我才发现,这件事远比我想象中难得多,完全超出了我目前的能力范围。开发一款产品,需要对整个业务流程有清晰、完整的认知,才能流畅推进开发工作;而我当时只有一个模糊的想法,还不够成熟,需要不断梳理、不断验证、不断调整,这个反复打磨的过程,堪称一种“折磨”。

目前,这款应用我目前完成了核心功能,练习部分目前只有句子拼写,还缺少其他维度的练习,不一定能做到面向市场。但我给自己定了一个最低限度的目标:哪怕这款产品最终无法推向市场,也要先用它教会我自己英语,再分享一下开发产品的心得体会,也算不辜负这段时间的付出。

四、工作

今年,我经历了一次职业变动:之前所在的外包公司被甲方整体解约了,所有人都被裁掉了😮‍💨。好在公司给预留了两周的缓冲时间,我在这两周内顺利找到了下一份工作,离职日期和新公司的入职日期,只间隔了一个周六和周日,相当于完全没有休息,就直接无缝衔接了新工作。

OIP-C (1).webp

(本来今年一年跟着甲方就在不停的加班,甲方这边刚闲下来,立刻就被清场了,入职新公司后立刻开始新一轮的加班,真心命苦😩)

从这次求职经历来看,我感觉自己的前端技术功底还是比较扎实的,最近几次面试中,面试官对我的评价都还不错,这也给了我一些信心。

新工作有明显的优点,也有让人困扰的缺点。优点方面:一是离家比较近,打🚗20分钟内就能到家,节省了大量通勤时间;二是公司属于半自研类型,客户资源稳定,短期内现金流比较充足,相对来说不容易被裁员,职业稳定性更高。缺点方面:加班现象非常严重,而且这种加班和任务量没有太大关系,属于“硬加”,大量占用了我的个人时间和社交时间;另外,公司的调休、请假流程比较繁琐,请假很费劲,个人时间的灵活性很差😔。

五、其他细碎日常

今年,我最大的变化,是调整了自己面对生活的态度🌱。一方面,学会了享受当下的生活——以前的我,总是陷入“完成这个目标就好了,做完那件事就轻松了”的内耗中,但慢慢发现,努力是没有尽头的,而生命的长度是有限的,与其一直追赶目标,不如珍惜当下的每一刻;另一方面,学会了聚焦有成果的事情,尝试通过为别人创造价值,来实现自己的价值。

这种态度的调整,带来了两个很明显的好结果:一是我深切感受到了“活在当下”的踏实感,不再被过度思考内耗,也不再因为焦虑影响当下的生活。最直观的感受就是,老婆不再抱怨我是一个“压力锅”,我们之间的争吵变少了❤️,我也不再那么容易被情绪支配,心态变得平和了很多😌;二是我开始尝试在网上分享自己的学习心得、开发经验,虽然内容不多、影响力不大,但也稍微感受到了分享带来的快乐。

除此之外,我还尝试了一些其他事情,但都没有坚持下来,目前处于搁置状态:比如坚持刷了一段时间的leetcode,锻炼编程思维;比如参与了一段时间的100day css challenge,提升前端样式能力。这些事情本身都很有意思,也能带来成长,但我还是没能很好地将它们融入日常生活中,往往会因为占用过多时间,影响工作和休息,最后只能无奈搁置。

OIP-C (5).webp

买了“半台”电脑。之所以说是半台,是因为暂时还没有钱买显卡——本来想着攒点钱,买一块显卡用来跑AI相关的测试和开发,但没想到显卡价格这么贵,只能先先用着无显卡的主机,慢慢攒💸再补齐。

OIP-C (6).webp

另外,我还为vue-plugin-hiprint这个开源项目贡献了一些代码,虽然代码量不多,也不算核心功能,但也是我参与开源的一个小尝试,希望以后能有更多这样的机会。✊✊✊

六、2026年规划

我给自己2026年关键词是创造价值,无论工作是还是生活、无论是娱乐还是学习,多输出,多交流,为更多的人提供力所能及的帮助,并尝试以此来成长自己,养活自己。

生活

  1. 身体健康:坚持基础的心肺锻炼,同时加强腰部、腹部肌肉锻炼,改善久坐带来的身体劳损;年初返工后,先去做一次全面体检,已经很多年没有体检了,及时了解自己的身体状况,做到有备无患。
  2. 日常与体验:趁着还有空闲时间,带老婆去她一直想去的城市旅行;多尝试一些新的事物,增加不同的人生体验;计划买一辆小车,预算控制在10万以内,方便老婆日常上下班。

成长

  1. 完成英语学习应用的开发,至少实现完整的核心功能,达成“教会自己英语”的最低目标,后续再根据实际情况,考虑优化迭代。
  2. 拥抱开源,尝试给更多开源项目贡献代码,重点聚焦3D可视化和AI应用的项目,巩固自己的技术,积累相关经验。
  3. 坚持分享,输出更多有价值的文章,内容可以是前端开发、3D可视化、英语学习,或是产品开发相关的心得,养成定期分享的习惯。(因为是第一年做,先不设定具体目标吧)
  4. 尝试寻找适合自己的自媒体账号的运营方向。
  5. 在日常工作中多做一些后端的工作,拓展自己全栈开发的能力

习惯培养

1.每天内容记录。起初是为了方便写周报,后来逐渐发现这种方式,可以让自己清晰自己的进度,这样就不会有浑浑噩噩花了很多时间,但是什么也没做的感觉