有没有人为了reset跳槽
程序员为“Reset”跳槽:从“fully own”到“co-own”的责任权衡与职业发展
该帖深入探讨了程序员是否会为了摆脱维护多年的“屎山”代码库而选择跳槽,核心矛盾在于长期面对难以维护的代码,作者怀念早期项目结束即可翻篇的体验,并询问是否存在不以升职加薪为目的,纯粹为了“Reset”而跳槽的案例。讨论中,AI时代“屎山”价值的争议、好老板的稀缺性以及“屎山”中蕴含的复杂业务逻辑是主要焦点。新增回复进一步强调了“拒绝fully own”的说法,并反问是否是“co-own”(共同拥有)的意图,暗示了对承担Oncall debug等责任的抗拒,倾向于分散责任以避免潜在的甩锅风险。
1. 关键信息
- (之前已归纳)作者因长期维护项目导致代码成为“屎山”,萌生为“Reset”而跳槽的想法。
- (之前已归纳)担忧“好老板”难得,以及自己写的“屎山”是否需要自己承担。
- (之前已归纳)有人认为AI时代,“屎山”的护城河正在被AI瓦解。
- (之前已归纳)也有人认为AI难以理解复杂的业务逻辑和历史信息,真正的“屎山”AI仍难胜任。
- (之前已归纳)有用户分享了跨专业转岗(如硬件转软件)可能面临降级的情况,也算一种“Reset”。
- (之前已归纳)有观点认为,不写注释、不重构,保留核心业务逻辑的独特性,是避免被轻易取代的方式。
- (之前已归纳)有用户分享了自己维护了三年的核心代码库,在公司重组后被交由印度团队重构,尽管自己贡献巨大,但影响力和薪资(comp)反而被降低,导致其考虑跳槽。
- (之前已归纳)用户认为当前技术领域“护城河”不再,除非是极具知名度的个人,否则大多数人都是可替代的。
- (之前已归纳)用户表示即使收入持平,也愿意跳槽去探索新机会,认为五年内深陷一个技术坑(舒适圈)不利于个人发展。
- (之前已归纳)有观点认为,“有测试的屎山”是不合格的,暗示了代码质量与可维护性之间的关系,以及测试在代码维护中的重要性。
- (之前已归纳)有用户提到身边有美国人为了“Reset”而去读Master学位。
- (之前已归纳)关于重构代码时测试集的处理,有观点认为“对应interface的测试集不许碰”,而内部unit test可以随意修改。
- (之前已归纳)最新回复指出,“Reset”不过是从自己维护的“屎山”代码库,换到别人维护的“屎山”代码库开始。
- (之前已归纳)回复者表达了对“fully own”一个方面的抗拒,担心Oncall debug出问题时责任会硬抗,倾向于分散责任。
- 新增:回复者引用了“拒绝fully own”的说法,并反问是否是“co-own”(共同拥有)的意图。
- 新增:回复者认为,不必纠结于“co-own”还是“team”(团队),关键是将该写的文档(doc)写好并保留。
- 新增:回复者强调,避免成为“solo hero”,在不获益的情况下将自己置于危险境地。
- 新增:回复者指出,Ownership(所有权)除了在相关的评级(rating)和晋升(promo)时可能被掌握,其他时候可以“给出去”。
- 新增:回复者认为,最终能写在简历上、面试时能说出来的才是自己的,Ownership等说法仅是“在岗的说法”,本质是“该混就混”。
2. 羊毛/优惠信息
- 无
3. 最新动态
- 无
4. 争议或不同意见
- (之前已归纳)关于AI处理“屎山”的能力:有人认为AI已能处理大部分“屎山”,而有人则认为AI难以理解深层业务逻辑和历史信息。
- (之前已归纳)关于跳槽动机:大部分人认为跳槽最终还是为了钱,单纯为了“Reset”的理由不被普遍认同。
- (之前已归纳)关于“屎山”的价值:有人认为“屎山”是个人技术能力的体现,也有人认为在AI时代价值降低。
- (之前已归纳)关于个人在核心代码中的价值和可替代性,有用户经历表明即使是核心贡献者,在公司变动后也可能面临价值被低估和被替代的风险,这与“护城河”的讨论形成对比。
- (之前已归纳)关于“屎山”的定义和质量标准,有观点认为“有测试的屎山”本身就是不合格的。
- (之前已归纳)关于重构代码时对测试集的处理方式存在不同看法,一方认为应保护特定测试集,另一方认为内部单元测试可随意修改。
- (之前已归纳)关于“Reset”的本质,有观点认为这仅仅是从一个“屎山”跳到另一个“屎山”。
- (之前已归纳)关于承担责任的意愿,有人倾向于避免完全负责某个技术领域,以规避潜在的Oncall风险和责任追究。
- (之前已归纳)关于“fully own”的责任承担模式,有回复者提出了质疑,暗示了对这种模式的潜在抵触,并抛出了“co-own”的可能性。
- 新增:关于“fully own”的责任模式,有回复者提出了质疑,暗示了对这种模式的潜在抵触,并抛出了“co-own”的可能性。
- 新增:对于“co-own”或“team”的责任模式,存在不同看法,有人认为关键在于文档记录,而非责任划分的模式本身。
- 新增:关于Ownership的价值,有人认为其主要体现在评级和晋升,而非日常工作中的实际意义。
5. 行动建议
- (之前已归纳)如果
没有身份顾虑且跳槽工资不降,可以考虑为“Reset”而跳槽。 - (之前已归纳)考虑换组或内部转岗,可能是比跳槽更稳妥的“Reset”方式。
- (之前已归纳)保持自身成为“大动脉”的价值,例如通过保留核心业务逻辑的独特性。
- (之前已归纳)对于“屎山”的重构,有人提出利用AI和测试集的方法。
- (之前已归纳)在维护代码时,应确保代码质量,避免引入“有测试的屎山”,注重测试的有效性。
- (之前已归纳)鉴于当前技术领域的可替代性高,个人应积极寻求新的发展机会,即使是收入持平的跳槽,也可能带来更广阔的职业前景,避免长期处于舒适圈。
- (之前已归纳)在公司重组或外包的背景下,个人应警惕“技术护城河”的脆弱性,避免在一家公司过度停留,建议在4年包裹(cliff)前考虑跳槽。
- (之前已归纳)在进行代码重构时,明确重构范围和边界,保护好关键接口的测试集,同时内部单元测试可以灵活修改。
- (之前已归纳)对于“Reset”的看法,需要认识到跳槽可能只是从一个“屎山”转移到另一个“屎山”,需审慎评估。
- (之前已归纳)在技术职业发展中,可以考虑分散责任,避免完全“fully own”某个技术领域,以降低Oncall debug等潜在风险。
- 新增:对于“fully own”的责任模式,可以考虑探索“co-own”等更分散的责任承担方式,以规避潜在的风险。
- 新增:在工作中,应注重记录和文档编写,将重要成果体现在可展示的文档中,而非仅仅依赖于“Ownership”的口头说法。
- 新增:避免过度承担“solo hero”的角色,在不确定的情况下,应谨慎评估风险,避免将自己置于不利地位。
- 新增:认识到Ownership在职业发展中的实际作用,主要体现在评级和晋升机会上,应理性看待其在日常工作中的意义。
- 新增:在职业生涯中,应采取“该混就混”的态度,将精力集中在能够转化为实际成果(如简历上的内容)的事情上。
跟了一个项目很多年了,老板也好,收入还算满意。但是这个项目从自己写下第一行代码,到如今随着不断变化的business requirement自己亲手堆成了屎山。很怀念上学的时候一个学期结束,过得再好再差,新的学期又是新的开始,上个学期的屎山作业和考试不管得多少分都不用再去碰了。有没有人不为升职加薪,单纯为了一个新的开始跳槽的?还是说好老板难得,自己写的屎还得自己吃
就喜欢从E3从头开始的感觉
我会跳出舒适圈,但是主要还是为了钱,钱多才跳
没毛病,资本社会还是看资本
reset也是为了提升自己,最终目的是为了钱。。。单纯reset一下感觉不太行,稳定性还不如现在的工作,毕竟你是资深专家,公司不会随便开你
【引用自 yyyy】:
还是说好老板难得,自己写的屎
喂给ai吃呀! 你吃他拉下来的。 新新的非常开胃
好老板难得,别跳了。任何项目做一段时间都是屎山,这个屎山好歹是你自己写的。
不过能自己搞出来一坨屎山以前是很高的护城河,现在ai时代已经不是了
屎山主要是里面隐藏的历史信息太多了。本老不觉得AI能理解这个。
大部分屎山是公司复杂业务逻辑的内在体现,AI这方面训练数据为0。
如果楼主没有身份顾虑跳槽工资至少不降,想reset就reset咯
是有那么一些问题,不过ai越来越强了,就我的使用体验,半年前是完全没法做,现在已经能做很多了。这样发展下去这个gap不说100%能填,起码是抹平了不少。内部的ai不仅能读代码还能读代码历史和历史文档和ticket
任何工作都是80%的好做,剩下20%的要命。AI无非是让那80%的更好做。
AI唯一可能真正work的是一个从0开始就用AI做的东西。而且这个东西还不能和现存世界有任何链接。
【引用自 ctzsm】:
内部的ai不仅能读代码还能读代码历史和历史文档和ticket
说明你没见过真正的屎山。
我觉得是从0到1的巨大突破,以前是不能,现在是能,区别已经异常巨大。
换组呢?
是的工作以来我都是在人类最优秀的open source project比如chromium和aosp上工作,基本上没有接触过真正的屎山
目前市场hype显然已经计价了1到100马上就完成了。从0到1这不是gpt3出来就可以知道的事儿嘛?
难怪。。。你这个就是新手刚入市碰上大牛市了然后觉得长期超越VOO很容易。
感觉不一定? 公司会不会觉得老油条了 就开了?
公司刚裁了了几个6-10 年+ 的老员工
最搞笑的是,裁到大动脉了, 最后着急招那人回来做contractor 他还没找到工作于是就回来了
所以重要的是让自己成为大动脉。坚决不写注释不refactor。确保公司核心业务逻辑就你看得懂。
跟了一个 p2 很多年了,partner 人也很好,生活还算满意。但是这段关系从自己说出第一句情话,到如今随着不断变化的琐碎要求自己亲手堆成了屎山。很怀念以前一段短期关系结束,过得再好再差,新的开始又是新的开始,上段关系的烂摊子和冷战不管得多少分都不用再去碰了。有没有人不为更好的条件,单纯为了一个新的开始分手的?还是说好伴侣难得,自己作的业还得自己受。
我觉得从来没遇过真正的green field project,都是披着皮的legacy migration。只能说op在公司是运气真的好。
如果屎山主要是复杂的业务逻辑判断,内部奇怪的缩写常量变量名,利用各种undefined behavior实现trick等,那现在的AI已经可以理解的七七八八了,大部分公司的业务逻辑都不是独一无二的,AI没见过这家的数据不代表没见过这个行业其他类似的数据
我觉得至少得是0x5f3759df这个级别的屎山,才可能难得倒一些AI
所以你亲手搞了一团xxx,然后就准备跑路把烂摊子留给后来者?来人,叉出去砍了。我被迫接手新项目的时候就最恨这种的了。
还真的有这种事?有加钱吗?
contractor 肯定比原来钱少
而且就几个月的那种, 用完就丢
七七八八和不理解没区别。任何本科毕业的估计都对股市理解的七七八八了,能稳定超越大盘不?
看成resnet了
某大厂允许跨专业转岗,前提是通过面试,但很有可能被降级。听说不少硬件工程师宁可降两级也要转成软件工程师,比如有人从L7降到L5,也听说有L6降L4的。也许这也算是一种reset吧
贵狗zsss?
【引用自 yyyy】:
自己亲手堆成了屎山
后来的人怎么说
你换项目做呢?
明智之举,不然哪天积屎成疾了搞不好还要背锅
一直看成為了reset跳樓 想說也太恐怖
换个地方容易吃别人攒的 ,还是吃自己的 更容易消化
屎山重构还真的AI比人强一百倍
而且AI有绝对可靠的方法论
只需要两步
你给我构建一个覆盖每一个代码分支的测试集出来
重构,测试集代码一个字符不许碰,重构完修到测试集全部通过为止
很多屎山都没法测试的。都是e2e直接verify的。
本老这么说吧:本老说的屎山就像2000年前的农村旱厕一样,你们根本都没法想象。这帖里大部分对屎山的认知可能也就限于北京胡同那种蹲坑了。
现在代码生成成本低了,我猜formal verification的工业应用很快会爆炸
肯定有Mike Tomlin就算是吧
这不是跳槽,是自己把自己开了,省的以后被开
有测试的屎山是不合格的屎山
没用 我干了三年的超大一坨全org都depend但都没人帮我own的码reorg扔给印度六七个人团队直接handle还带refactor了 甚至我今年交出去impact少了一大截反手吃low rating砍comp砍成高位截瘫
已经在收拾跳了 主要是现在做新东西也得抢资源就心累 这年头没什么护城河 除非是人尽皆知名字 不然都是可替代的 我现在只想收入就算平移也出去看看 感觉俺NG一头扎进五年一个坑还是太舒适圈了
身边有美国人为了reset然后去读master的。。
【引用自 收束观测者】:
测试集代码一个字符不许碰
这合理吗 重构要改unit test很正常吧
确定重构范围
范围边界上的interface freeze
对应interface的测试集不许碰
内部unit test当然随便改
我经常看他跑半天跑不过把我测试删了
所谓的 技术护城河 在 Reorg/Outsourcing 面前就是一张纸
很多时候我们觉得自己 Own 了一套复杂的系统很稳,但在 VP 眼里,这种 只有一个人懂 的状态反而是风险—— Single Point of Failure。他们把你踢走把活儿扔给海外团队,哪怕效率掉 50%,只要成本降了、风险分散了,他们就觉得赢了
我觉得现在的行情下,千万别在一家公司的舒适圈里待超过三年——在4年包裹 cliff 前就走人
【引用自 收束观测者】:
内部unit test
是我们主要的test
有integration test但是coverage不大
还有很多靠人工QA test
照这个逻辑反推:
只要有测试员的产品都是好产品
?
其实,测试本身也可以是屎山
说真的我一次都没碰到过
我怀疑你们prompt有问题
跟AI说话跟和黑圣杯许愿差不多
你prompt不精确就可能按照未曾设想的道路达成你的要求
以前很多没测试是因为懒得去写而不是没法写。。 用AI后这个会改进很多
我让他改动ui 他跑一段时间过不了后就觉得旧的test 已经不适用 所以直接删了。
【引用自 gin_m】:
懒得去写
不存在的 会被reviewer骂死的 除非你能说服他是真的没法写
reviewer都是熟人的情况下不会挡着你的
UI不懂
不过我有人格调教指令不许它根据猜测得出结论
所有结论要有证据链
reset不过是逃离了自己的屎山然后从别人的屎山从头开始
reset不过是从自己维护的一堆屎山代码换到别人拉出来的屎山代码从头开始
是的有道理 我现在甚至有点拒绝fully own一个方面 不然oncall debug出事了锅还只能硬抗
非码农也没看完回复
但屎山靠ai改了
那以后会不会代码都可以优化很多体感更好
【引用自 搞钱不到钱只能玩卡】:
拒绝fully own
那是 co-own 吗
理解楼主是不是怕Shi山爆雷?其实对和错没那么重要 最重要看你老板信不信任你 有个稳定工作 别折腾
个人感觉没必要纠结 co还是team 就把该写的doc搞出来扔在那也行
单纯就是 别成为solo hero在不获益时候把自己架起来烤
ownership除了那一两次相关的rating和promo捏手里以外该给出去给出去
能最后写在简历上面试说出来的才是自己的 ownership啥的都是在岗的说法 说白了就是该混就混