date: 2025-11-02
2025年度总结
新的一年,我还是会继续写我的编译器。
前言
我这博客已经有一年了,但仍然没写什么东西。 这域名是我生日那天买的,最近我也续租到了十年。
文明六游戏,迭起兴衰 DLC
游戏进程中时代更迭,您的文明可能进入黄金时代或黑暗时代。如您在竞争中优于其他文明,或完成了较多历史时刻,下个时代则很可能进入黄金时代。反之,落后则可能坠入黑暗时代。 如不幸坠入黑暗时代,切莫灰心丧气,因为您仍能进入英雄时代。坠入黑暗时代后,进入黄金时代的临界值更低,超过此临界值即可进入英雄时代。进入英雄时代后可以选择3个着力点!善用各种能力,超越连续进入黄金时代的玩家也并非天方夜谭。
2025年,我25岁,我觉得自己已经开启我的黄金时期。
今年发生了很多事,让我觉得生活很有看头。
四月初,我跳槽到新公司,自己一个人来到外地住。 虽然租房条件不理想,但我有一个非常小的独间。 意料之外的是,这让我心无旁骛投入学习,生产力爆增,这种感觉真的很爽。
还有一个契机是,我从 motor 跌倒后,在家休息时回顾过去的财务状况,清点资产,我终于有 100k! 受到陈一枝UP主的启发,我觉得意义非凡,值得庆祝个人成就。 所以临今我的生日,我写下这篇年度总结。
在这里,我要感谢我的父母。
我的独秀指数已经来到了2以上,我应该买个Haagen-Dazs庆祝我的重生!
回顾
- scheme编译器
- complete bootstrapping in 10s
- 分布编译
- 多目标(x86, x64, RISC-V, Aarch-64)
evalcall/cc- multi-value
- unicode
- 编译以及成功运行syntax-case代码
- 其他优化
- 学习:基于ANF的delimited continuation实现
- 2025 年初辞去数据工程师职位,加入一家半导体公司,担任软件验证工程师。
- 第一次到外地长期打工,租房,不靠父母资助。知道了一个人在外到底要花多少钱。
- 20251202 - 收到Raspberry pi 500 keyboard
- 20251207 - New compiler that support
eval,call/ccand multiple values https://github.com/taimoon/scheme-compiler
目标
- scheme编译器
- 完善unicode支持
- 基于向量化的浮点数列实现案例(类似于
numpy) - 并行编程支持
- FFI
- 改进GC:分代垃圾回收
- 汇编器,连接器
- record
- bare-metal
- 技术考古
- 基于ANF/CPS的寄存器分配策略 (related-work: SSA based regalloc)
- Make myself a AI compiler
- Make my OS able to run my compiler
scheme->C,scheme->llvm
- 入手一个raspberry pi keyboard
- 工作
- 主动参与下一代AI芯片高性能算子的开发以及profiling
- 继续精进测试技巧,专注在fuzzing, differential testing, user-based, functional testing
BAKA的理财心得 ᗜˬᗜ
TL;DR 总之motor佬是我的信仰,唯一真神,搞不好我很多存款都全靠motor大哥帮衬。
刚踏入职场的几年,还是先提升收入才能更好地理财,正所谓开源节流。
比如,如果你觉得一个月 RM2500 就能过得很滋润,那么:
- 月薪RM3000,存 RM500,独秀指数是1.2
- 月薪RM5000,存 RM2500,独秀指数是2
前者若想多存点钱,就得更省吃俭用,过得非常痛苦,这很打击士气;
而后者则能轻轻松松存下收入的一半,游刃有余。
说到底,本金小的时候,再会投资也翻不了太多。 就算你股神附体,一年 RM1000 翻倍也才 RM2000 。 这就是本金少的无奈。
年轻人,这就是早期收入的力量!想尽一切办法提高打工收入吧。
契机
屠妖节前一周,我骑 motor 刹车滑倒,拿了两天 MC,又居家办公两天。 一时兴起,我就看看网上的理财视频,比如:
UP主说理财第一步是完成原始邪恶血腥的资本积累,就第一个理财目标是赚到第一桶金。
金额多少?100k。不是一个小目标(1个亿)!
我清点了财产,没想到不知不觉已经有100k在账户上。
全职工作近两年,我就已经拥有了我的第一桶金。 我家里只是刚好属于 M40,只比 40% 的人稍微有钱一些。 不算穷,但也不奢侈。
我当时心态是自信心爆棚,感叹我真的已经长大了。
- 00后,全职工作两年,年纪轻轻就已经有100k。我实在太厉害了,可能我是个万中无一的天才,马中赤兔,人中龙凤。ᗜˬᗜ(自恋ing)
- 我就纯傻X,如果不赶紧拿去投资,不然钱就要贬值,烂在银行里。我超级焦虑的,赶紧买点基金压压惊,我得赶快学习投资了!
虽然在某乎,某书那些人均 985 毕业生年薪几十万的地方,会觉得100k不够看。但哪怕再小目标,都要精神激励一下自己。不然san值会掉光
Celebrate every win no matter how small is it
为什么100k?Making \$1M Is Easier Than \$100K, Here's Why
可以优化的地方
- 你不需要太多现金,再加上物欲低的情况,你更加不可能需要太多现金来报复性消费。有六个月生活费就很多了。再说你也还有每个月收入进账。
- 当你有10k的时候,就已经可以开始每个月放个几百块玩各种理财产品,比如:定期,money market,基金,股票。
- 是不是应该要自己煮饭?
- 不要买劣质品
- 二手东西也不是不可以
- 走路去上班
找个富婆
我复盘为什么我可以有100k
- 收入增加,然后生活不奢华。就那么朴实无华,一种数值强的美。
- 生命中最美好的事都是免费的,同时也是昂贵的。比如创造
颅内高潮也可以快乐,但会占你很多时间 - 没有车。最便宜的新车要RM30k,这我要存一年才能买,也太不值当了!更不要说每个月油钱,泊车费。
- Kapcai(Cub仔)摩托车(例:Honda EX5 110cc)是性价比最高的交通工具之一,利益风险并存
- 非常危险!一出意外,可能当场就撒手人寰。很多良家子女不被允许去考摩托车驾照。
- 便宜:2025 年 Honda Wave Alpha 110cc 大约 RM5000,和一部苹果手机差不多。
- 省油
一升汽油可以走50km。
我以前天天往返 Cyberjaya 和 KL,两天油费仅 RM5(两升汽油),20 天工作日约 RM100。
如果工作地点靠近(<10km),油费几乎可以忽略不计。 - 耐操,维护方便,维护便宜,非常省心。
- 很多地方放摩托车不用给泊车费。就算有,就是RM2 per entry
- 上高速不收费
- 虽然最高时速就90km,但可以自由穿梭于车流,不受堵车影响,又比快铁公交快很多。
- 30km Cyberjaya <-> KL Cheras
motor: 45min
car: 30min ~ 1 hour
MRT + bus: 1 hour ~ 2 hour - 可以自己出去打包,省下配送费,就不麻烦外卖小哥
- 可以兼职外卖工作
成为绿灯侠(虽然我没做过就是了) - 相比之下,汽车只有安全,舒适,还说的过去。
- 如果你很穷但又不想搭公交,又又想到处玩,我建议可以考摩托驾照,你值得拥有
- 电话费是365天配套(最多几十,经典的老头配套),偶尔充网费。可以做到每三个月RM10。在外刷不费流量的文章,能用无限流量wifi就用wifi。
- 买性价比高的东西,要货比三家,要费脑细胞,又占位置,要打理。
在千元机上跑lazada,shopee是真的很卡,远没有你刷某音,某乎,某优顺滑
PC网页版体验更加糟糕。
索性就不买,除非真的很需要或者很方便。 - 独有轻奢配套
- 天天早餐薯饼+麦满分+廉价咖啡(虽然性价比不好,但我喜欢吃)
- 午晚餐的杂饭加鸡腿就已经很奢侈了(我是真的喜欢吃鸡腿)
- 我对那些需要等上几十分钟的商场餐厅表示鄙夷!
- 没什么朋友
- 没有女朋友
2023 ~ 2025 : 在AET实习+全职数据工程师的故事
这是为什么我总是会有时间错乱的问题。我出席我毕业典礼的时候,已经是我工作满一年。 虽然工作两年,而且感觉好漫长。 这也是一件好事,至少过得很充实,丰富了我的人生经历。
我大学其中一个毕业要求是完成为期六个月的实习,即一个学期。 然后我本科更是再加料,要求数据分析本科的学生一年的实习期。 具体实行挺复杂的,复杂到我院系需要举办特别工作室来向企业们解释。
作为学生的感觉是这样的
- 课程为3年半
- 统计,数学为主,data science programming为辅
- 第一年,读书
- 第二年,读书
- 第二年长假,开始物色你心意的企业作为你未来实习的地方。 当只能从大学钦定的企业中选择,所以选择不会很多。
- 第三年第一学期开始毕设的上半部分
- 第三年第二学期开始在公司,一边实习,一边补完3个选修,一边完成毕设的下半部分
- 第四年第一学期,即最后一个学期,才是真正的实习
可能有人不解:"会有企业要一年的实习生???"
之所以可行,是因为这是大学和企业之间的深度合作项目。 我们的选修课和毕设题目都可以由企业指定,以符合他们的业务需求。
当然,现实里企业未必真的关心我们的毕设成果。 有时只是敷衍一下大学和学生, 单纯想要一整年的廉价劳动力罢了。owo
总之,企业可以提很多要求来符合自己的利益,大学对企业也会有相应的要求。
代价就是
- 企业要收留至少两个一年期的实习生;
- 要确保他们能完成毕设,其中前六个月是半工半读的形式,不能全心全意投入工作。 实际操作上,至少得空出星期五,让他们远程上选修课,写毕设;
- 学生也不能随便去没合作的企业实习。 举例,实际操作上,因为米哈游没和我大学合作,所以我就不能直接原神启动。
那时是 2022 ~ 2023 年,那时候能选的合作企业其实都挺有分量的:马来西亚电讯公司,马来西亚基建公司,统计局,Cybersecurity Malaysia(某政府部门),还有 Talent Corp(人力部)。
不过,老师们那阵子也挺焦虑因为我们这一届有将近 60 个学生,他们得一家一家去谈,想办法让企业多收几个名额。
一般同学的选择都很现实:要么选薪水高的企业,要么选名气大的给履历镀金,要么选和本科专业直接相关的实习岗位。
排除离家的因素,大多数人之所以选这个数据分析本科,都是那种不讨厌数学,但也不是很喜欢编程的类型。 当初的想法大概是:不用学太多电脑的东西,未来也不打算进软件相关的岗位。
至于我嘛,能上到这间名不见经传的大学,怎么能是常人呢?
绝对不是我考不上好大学的软件工程系!肯定那些大学看走眼!
我就选那些是看起来像是软件岗的公司。我选了一个数据工程的(化名:AET),一个数据分析的(化名:Quad)。 我选AET因为是软件岗,而我选Quad只是离家近,高薪。(我承认我挺庸俗的)
Quad要求绩点高,而AET更看重有软件工程知识(例:diploma in computer science)
AET 在面试前会要求我们先完成一份选择题答卷,问题涵盖 Python, SQL, PySpark, S3, Networking and Linux command。
虽然没有明说,但其实他们是允许我们作弊,上网google答案是完全okay的。 真正要考察的是你能不能驾驭搜索引擎之力。
当时我能凭实力,举一反三地回答,大部分题都没靠太多 Google,
除了 Python REPL 的部分。
我单纯,我是一股正道,我清高,不屑作弊,装逼。
答卷成绩高的同学,才能面试。我是其中得分第三高,然后老师让我只面AET,如不成,才让我面下一间。因为大家机会有限,要留给其他同学。
面试过后,AET直接相中了我。
小插曲:在AET面试结束的隔天,Quad居然绕过老师们,私下phone interview我。
回想起之所以那么顺利是因为:之前AET拿不到优秀生,然后应大学要求说:我们可以收多两个实习生,前提是给我们优秀生。 而我就成了大学的那个筹码。=w=
AET 是一家典型的小型外包公司,大约 30 个人左右, 项目多数来自本地企业和政府相关部门。
这也解释了他们为什么给不起高薪来吸引优秀实习生。
不过,薪水不高也有它的好处:责任少一点。
毕竟本叔叔说过:能力越小,责任越小。
摸鱼的时候也能少一点罪恶感,更能心安理得地摸鱼。
呸呸呸,这种违背职业道德,违背工作良俗的话不能乱说……
我应该说:我能更好地专注完成选修课程和毕设。
再说,当时 AET 正好没有在进行主要项目, 实在也没什么事情可以交给实习生做。
我头六个月都很chill的,不紧不慢地完成我的毕设:
- 学习深度学习基础,研读论文
- Pytorch, PyTorch Geometric
在提交毕设的时候,我被拉进了一个数据现代化项目,开始全职 ETL。 我们那时已经在客户公司的会议室里办公了。
有一次,上司在会议室里问我和另一位实习生 Farhad,要不要提前转正做全职,因为项目人手不足。 我当时说,只要薪酬到位,我都 OK。 心里想着:领着实习生工资干全职活,这也太说不过去了。
结果没想到,在离实习结束还有四个月的时候,offer letter 就特么发给我了。 就这样,我顺理成章地成了全职数据工程师。
没想到,那也是噩梦的开始。
这个项目大概从一开始就注定要烂掉,后来果然也黄了。 我那位同学Farhad倒是挺精明的,没有趟这滩浑水。 真的是诠释了什么叫“走得快好世界”。 项目烂到什么程度呢?我司在这个项目上,竟然换了三个PM。
我的工作主要是协助把旧的 SSIS ETL 流程迁移到新的现代化数据仓库。 新平台采用了全新的数据仓库模型,以及 PySpark,Airflow,S3 等技术栈。
问题在于,客户几乎没有任何相关文档。 我们只能对他们现有的 ETL 进行逆向工程,再一点一点地复刻到新平台上。
做迁移,永远都是一个大坑。
你照着旧流程写一个新的 ETL,结果数据却对不上旧系统。 一顿分析之后才发现原本的 ETL 自己就有 bug。
可问题来了:你要怎么告诉客户,你写的是对的,而他们原来的实现是错的? 这话万万不能直接说,那简直是在打他们的脸。
更麻烦的是,他们的需求和期望往往是互相矛盾的。 按他们要求去写 transformation rule,结果数据就一定对不上旧系统。 然后你还得耐心解释为什么。
唉.....
我和另一位有两年工作经验的马来妹 Wan 一起负责 ETL。 我们遇到很多难题,导致项目一再延期,还得不断跟客户解释。 有一天,那是星期五。照例我们外包都会回到 AET 公司报到, 当时正跟客户远程开项目更新会议。 因为延误太多次,我们在会上被客户骂了。 Wan 当场情绪崩溃,在工位上哭了出来。 可能是我神经太大条,整个人都还没反应过来。
结果隔壁部门的上司把我叫进办公室谈心,安抚我说:
“这不是你的错。你作为 junior,不该直接承受这些客户的怒火。”
那时候我才意识到,原来我只是个菜鸟。 我是应该被上司保护的,有些锅根本轮不到我来背,也没必要事事亲力亲为。
尤其是当要和客户那边的 senior 开会时,如果没有强势的 PM 或上司陪同,是非常危险的。
对于一个菜鸟,又没什么社会经验的新人来说,加上从小被教育成“凡事不要说做不到”,你是很难拒绝客户的要求的。 当然,也不排除有那种社牛型选手,能潇洒地说出: “I'll get back to you later after I discuss with my lead.”
我们的苦难,其实症结在于:技术上司不是全职负责这个项目。
总之,迁移项目一旦遇上控制欲强,又不讲理的,还预算不足的客户,结局基本注定是烂掉的。
我从中学到的东西:
- 对刚入职的新人:请记住,你只是一个菜鸟而已。好好享受新手保护期。
- 记住本叔叔说过的话:“With less power comes fewer responsibility.”
- 延伸含义是:你能做的其实很有限,很多事从一开始就不在你的掌控之中。
当然,你可以忘记以上建议,如果你太想进步的话。
自从从那个项目撤出后, 我作为外包,有幸被指派到统计局,马电讯数据中心,还有国油那边上班。
国油那边的体验挺爽的。办公室就在 KLCC 双峰塔旁边的大厦。 每一层楼都有免费的廉价咖啡贩卖机。 我挺怀念那种廉价咖啡的味道。
楼下就是会展中心和商场,周围都是高档场所,人来人往,永远都很热闹。 以我文化有限的描述,大概就是那种“纸醉金迷”的感觉。
可能也只有我这种二代 KL 城市人,反而不太喜欢这种氛围,但又不讨厌这种矛盾感。
自那之后,公司经营状况就大不如前了。项目变少,利润也少了。 这意味着两件事:
- 薪水cannot up
- 能练手的商业项目也越来越少
虽然后来有加薪,但我始终觉得薪水和我的能力不太匹配。 所以在今年年初(2025),我就开始被动地找下一家了。
在斋戒月开始之前的某一个午餐,Wan向同事们宣布她也找到新工作了。 她离职后,就只剩我和另一个同事Mike。
排除掉新进的实习生和后来的同事,我实习时期一起共事的老同事们几乎都走光了。 而我们同事间关系其实一直都挺好的。
好惆怅啊。:<
如果我不赶紧找下一家,我就会是最后一个留下的人。 那种“被丢下”的感觉,可能会很难受。
Wan的离职让我变得不再淡定,整个人都开始焦虑起来,非常desperate,急着想找下一家。
跳槽
就在Wan宣布离职的那个星期,我在Discord上看到某网友发的job post。
我就私讯他聊了几句,把简历发过去,顺便问了是什么公司,待遇如何。
他先是肯定了我的能力,说我是目前收到的履历里最好的应聘人, 并笃定我能通过本地主管面试。
他还提到,他们其实收到了不少履历,但大多能力错位。 毕竟在马来西亚,熟悉C的人不多,而C在这里也没什么太大市场需求。
再加上,之前那些本来符合要求的候选人都被中国那边的同事拒掉了好几个, 所以这个职位一直没人能补上。
因为我有近两年工作经验,所以不是很符合校招条件。 但是如果走社招,就要被中国那边同事和美国VP面试,很有可能被刷下来。
过后,他们调整一下流程。校招只需要通过本地主管的面试就可以了。
所以为了确保我能顺利被录用,提高招聘成功率, 那位网友建议我走校招,而不是社招。
我心想:不是吧,哥们,你们这是有多缺人啊?
后来他把我的简历内推给公司HR,说很快HR就会联系我。
我也得知那是一家中国公司,但在外网几乎找不到任何他们在马来西亚设分部的消息,看起来非常可疑。
搞不好就是那种,被骗去KK园的套路。
很快啊,隔天我就接到一个来自北京HR的国际电话。 她先向我介绍了公司的情况, 还特别安抚我,说这不是诈骗,让我放心。
最后,她帮我预约我在星期五和hiring manager面试。
吐槽:网友,HR也特别强调他们公司不是996公司。
那两个星期我巨紧张的,临时抱佛脚地在刷 LeetCode。
一来,这是我第一次在市场上找工作;
二来,我以前从来没靠刷题来应付面试的编程题。
结果,面试的时候,面试官愣是一个编程题都没问,只是聊了聊我简历上的内容。
感情我准备一场空,跟空气斗智斗勇。
就这样,我顺利拿到了 offer, 也就这样跳槽了啦。
因为公司是半导体行业,分部在槟城“矽谷”, 可以以Intel Graduate Trainee的薪水RM4000作为锚点。
再加上我已有一年多全职工作经验, 我还是报了一个相对保守的期望薪资, 但相比我之前的工作,这已经涨了 50%。
对,我之前的薪水低得连网友和 hiring manager 都很惊讶。 小公司的薪水就是这样。
如果 HR 启动薪资谈判,我可能就完蛋了。 毕竟我只有心理准备,没有演练过谈判策略。
结果 HR 非常爽快地同意了,根本没谈判。 这时我才意识到:这是要少了的节奏 X(
我的厕所!!!
之前作为外包去过好几家公司上班, 哪怕我之前那么落魄的前司, 全部都有自己雇的 kakak 打理的独立厕所,而且都非常干净。
结果到了新公司(仅限马来西亚办公室), 我原以为厕所就在办公室里, 结果被告知得去外边的。
外边的厕所也太糟糕了。 比较好的厕所在会展区,有一段距离,但也没有之前我用过的好。
这里的症结在于:办公室的装修布局不考虑厕所,所以同事们只能用外边的。
同事们也坦诚厕所确实有点那个,但觉得我小题大做。合着是欺负我这个没见过世面的城巴佬。
我跟你说,我之前项目黄掉的客户公司厕所可好了,人家马桶还有bidet的!
我绝对不是在抱怨,新公司的福利真的很好, 就是竟然没考虑到厕所,万万没想到啊。 owo
我一本正经抱怨厕所的问题,也成功逗笑了同事们。
关于新工作
我现在就职的公司是中国公司,团队里有北京,上海的同事,最近才扩展到美国加州,马来西亚和新加坡。
这是我第一次与大陆同事共事,大家都用中文交流,感觉挺新鲜的。
跟我之前工作是另一个极端,当时整个部门只有我一个广door仔,一个印度妹,剩下全是马来人。
后生仔的背刺
在入职几个月后,公司引入了Buddy系统旨在更好地onboard新人,为期六个月,提供有经费给mentor和mentee出去吃一顿好,攀谈交心。
虽然经费是很高,但我以为就发一次而已,我不以为意。
结果,同事告诉我是每个月发一次经费。我都觉得这仍然是一个谣言
我也是校招进来的,这种好处轮不到我。唉,是我来早了。
后来进来四个后生仔,每每想到他们可以吃六次好的,都要眼红一次。
我破防了。
上司说,如果以后有新进来的后生仔,我可以当 mentor 带他们去吃好吃的,但这不是重点。
明年我就第三年工作了,菜鸟保护期没了,已经可以独当一面,当师傅带小弟了,得更加认真对待工作,建立自己的影响力。 感觉自己长大得好突然,已经不能享受菜鸟待遇了,再加上以前那些经历,有点伤感。
后日谈
我为了写这篇文章,赶工一天多,吃了三轮麦当当,一个叉烧饭。好花时间啊。
得知朋友CJ,同学A,同学B,网友,后生仔A和后生仔B都有女朋友,再加上被同事们的调侃,我又破防了。我当时心情复杂。
现充们都统统给我爆炸!我要画个圈圈,诅咒你们!
感谢,后生仔A的礼物,以上都只是我无能狂怒,请别当真。
现在公司有人员变动,好多同事都走了。
好惆怅啊。:<
参考
- 【大男主如何管理小金库?】 https://www.bilibili.com/video/BV1pUA2eqECw/?share_source=copy_web&vd_source=28010969e8f47cd5d07fff1fbe2a90fe
- SSA-based Register Allocation https://compilers.cs.uni-saarland.de/projects/ssara/