入职一家公司挺久了,福利待遇挺不错也不加班,但是公司代码是我经验不足没见过世面,还是就是这么烂,假如说拿阿里巴巴开发手册去纠错,代码里没多少能过的。代码里出现的错误可能连实习的大学生都不会犯。遇到的问题包括但不限于:
Q: 你没有向上级反馈过吗
A: 我有,这个项目是和国外小组一起开发的,而这边就我一个人,我反馈给我国内的上级他们也不懂,而他们把这事情给告诉主要负责的国外小组后,给我的答复是开发紧任务重主要图个演示,且是自家项目这样搞没事也说了后面会改,且这样容易搞的我和国外负责的人很僵就再也没提过了
Q:提过情况的后来呢
A:照样很烂,没有一个功能是可以达成原本要求的,只要用户稍微细细测试下就崩,而在国外的老总很生气说到处都是报错,要这一段时间把所有报错全部修完,但这项目真的不可能修完不如全部重构,到处都是问题,在上面加新的功能都难,代码超级耦合
现在我真的工作起来很难受,本来 HR 也说过会再招但几个月了都没新人,我想着多个新人向上级提国外开发国外的我们这边独立重新搞一个,而且多一个人也能多一个人认同我觉得代码稀烂的观点,不然搞得我跟刺头一样。每天都是硬着头皮上班,感觉也学不到东西,每天外国佬应付老总,我也只能尽我力保证我写的地方没有那么烂。希望大家能给我一些开导或者建议,谢谢各位了
1 JoeDH 338 天前 向钱看,代码能解决问题就好 |
![]() | 2 catwalk 338 天前 如果有余粮,可以考虑退出,如果余粮不够,为钱看齐,再找机会。现在不好找工作,即使想换工作,还是做一些准备,手上有筹码再解决这事。 我容忍不了阻碍发展的所有事情,因为生命本身有限,在有限的生命里,我选择更有意义或者自己喜欢的事情。 |
![]() | 3 3IOhG7M0knRu5UlC 338 天前 坐和放宽,自己改到哪里就重构到哪里 |
![]() | 4 v1 338 天前 ![]() 1. 对入职前的代码尊重,不论是神仙代码还是屎山代码,至少它赚钱了,不然也轮不到你入职。 2. 对入职前的代码感恩,你可以试着重构,不能就加入其中,也许前任也是这样干的,但是他没成功,于是机会轮到你了。 3. 你上班的目的是赚钱,公司聘请你的目的是赚钱,一切运转向钱看齐,你代码写得再好看再牛逼,没赚钱也是废品。 |
![]() | 5 zeropercenthappy 338 天前 ![]() 在职的时候怒气值高,各种讽刺挖苦; 走人的时候暗自庆幸; 两年以后忽然从这个傻逼系统得到灵感(或者教训),颇有感慨; 三年后后悔维护的时候自己抱怨太多,而行动太少; 五年后意识到自己怒气值高的原因不是因为系统傻逼,而是自己驾驭不了; 八年后再次需要维护“傻逼”系统; 十年后方才领悟,“这个世界的本质是混乱不可知,而非有序可测”; 甚至技术新旧的界限也开始模糊; 其实是,自己不够谦虚敬畏; |
![]() | 6 sagaxu 338 天前 “入职一家公司挺久了,福利待遇挺不错也不加班”,跨国公司,“主要图个演示” 你到底想怎样! |
![]() | 7 IamLostInCoding 338 天前 via iPhone 我们现在想搞 AI 生成整个项目的代码替代程序员也很难受 |
8 zhangyou1010 338 天前 ![]() 能正常发工资的公司都是好公司 |
![]() | 9 cccvno1 338 天前 [福利待遇挺不错也不加班] 对于工作来讲这就够了。 别迷信那些规范,大部分小项目天天来回给屎山搞这个规范那个规范就是找死,上级看的是产出,不是代码质量 |
![]() | 10 inker 338 天前 via Android 你自己建个团队,和老外的项目拆开,比如,模块 A 你做,模块 B 他们做,出问题也好看出来谁的锅 |
![]() | 11 zjsxwc 338 天前 作为 crud boy 我完全不在乎老代码如何,是否是屎山, 现在 crud boy 上班日常内容就是, 用豆包等 ai 工具整理产品需求描述为我需要的文本格式 a.txt , 用我写的代码生成器脚本,根据 a.txt 来生成业务代码, 稍微修改下业务代码,复制黏贴,完成任务,下班。 |
![]() | 12 zx9481 338 天前 java 吗 |
14 WuOtto 338 天前 很难评 |
![]() | 16 zhtyytg 338 天前 @zeropercenthappy 短短三年,我竟走完了全流程。难道我真是个天才? |
![]() | 17 opentrade 338 天前 naive |
![]() | 18 wuhanchu 338 天前 写好自己的代码,其他人的代码,能不看,就当自己瞎了。 你会发现去哪个公司都是一样的。 |
19 cookii 338 天前 via Android 哪都一样,没有最烂只有更烂。好的团队可遇不可求 |
![]() | 20 orcusfox 338 天前 via iPhone 为什么有人可以在屎一样混乱的几千行代码里加功能?不重构能驾驭屎山吗 https://www.zhihu.com/question/497344549/answer/2215116962 |
21 foreverfuck 338 天前 这行情,不用纠结屎山代码 |
![]() | 22 jimrok 338 天前 交付优先于代码整洁,这个业务要是能持续挣钱,后面自然会有人来炸屎山。屎山在炸掉之前,还有另外的作用,培养你末日生存的能力。 |
23 shylockhg 338 天前 你提了就是你的锅 |
![]() | 25 potatowish 338 天前 via iPhone 你成立个公司,找个开发伙伴把这个活接了,重构项目 |
![]() | 26 panxi 338 天前 我觉得我们中大部分人还是没懂一个道理, 代码是体现商业价值的, 要有商业转换价值才有意义, 至于内里多垃圾, 没所谓 |
![]() | 27 harryWebb 338 天前 我觉得挺好,等你真的遇到那种规范的团队,你也会感觉烦得很,一直都是搞些有的没的规则限制你 还不如瞎几把写算了,能跑就行,屎山又咋样,能赚钱的代码就是好代码 不能赚钱的代码再好也是高处不胜寒 |
![]() | 28 w3 338 天前 Working Effectively with Legacy Code https://book.douban.com/subject/1428943/ |
29 luosilent 338 天前 程序员思维就是老想着重构,看不顺眼就觉得是屎山。如果你打算躺平之后,你就发现多点时间忙自己的事情,摸鱼或者副业或者提升其他方面技能跳槽。公司的任务按时完成就行了,至于老项目技术架构混乱、代码不规范等问题,能跑就行了还指望学什么东西,大部分人在工作之后都是吃老本做一些 curd 。 |
![]() | 30 stone9527 338 天前 1.改变他人 2.改变自己 3.改变环境 |
31 meteor957 338 天前 理解 op ,我现在接手的一个前端屎山,每次改需求和改 bug 都是折磨。每天花时间最多的不是解决问题,是找问题。 |
32 weiaichongfeng 338 天前 你工作没几年吧? |
33 iOCZS 338 天前 理想主义者的地牢 |
34 whywei8 338 天前 ![]() 辞职前,把失业的 V 友介绍进去。算做个好事。 |
35 jerry10086 338 天前 只要开的工资到位,我可以在屎山上“窜稀” |
36 csys 337 天前 之前听黄子华的一个段子,大意是公司发的工资有一部分其实是你上班的“医疗费/精神损失补偿”…… |
37 shaozelin030405 337 天前 是印度小组吗哈哈哈哈 |
![]() | 38 EastLord 337 天前 要么走,要么忍,其实很多公司的代码结构都不好,很多不符合规范 |
![]() | 39 youyouzi 337 天前 人和代码,有一个能 run 就行 |
40 whywei8 337 天前 @jerry10086 哈哈,就算给你一个干净的茅坑,时间久了之后(不论你自我感觉 多好),接手的人看你写的也是屎山 |
![]() | 41 ruandao 337 天前 1. (业务) 搞清楚,哪些是你们的核心能力,优先在核心能力的功能上进行质量保障,要不然容易在不重要的地方花费精力,投入没有足够的回报的话,就是浪费,无法持续下去 2.1. (技术) springboot 的话,控制反转 和 依赖注入用起来,这个是基础(解决耦合的基石),有了这个基础的话,可以在逐步的把核心代码抽离到单独的类里面,这样的话,就可以添加测试,逐个模块的确保正确性 2.2. (技术)代码这么糟糕,TDD 是没有时间可能性的了,但是可以试试 BDD ,加测试的好处是,将来改动的时候,单元测试一跑就知道破坏到旧的业务了,可以马上把影响给纠正下,你可以想想下,一个功能,提测然后 QA 告诉你出问题,你再重新改重新提测要花多少时间。 不过当前会付出额外的时间成本 3 (权衡)分层、面向对象设计和 DDD 之类的要不要整起来,就看你负责的业务的价值,业务价值高,就会希望质量也高,想要质量高,必须避免面条式代码(面条式代码当前大多不会有 bug ,但是一次次迭代的过程中,就会有 bug ) |
![]() | 42 ColdBird 337 天前 没事,我们这里的代码也是一坨狗屎,commit 的记录里都是 feat:0,feat:1 这种呢,有啥好说的? |
![]() | 43 Akitora 337 天前 学到了,原来大家是这么驾驭山的 |
44 xiaoHuaJia 337 天前 写什么代码不是代码,干嘛内耗自己。想要精进方法千千万,干嘛跟自己精神身体过不去 |
![]() | 45 daiisdai 337 天前 via Android 如果工作不累,待遇不错,有什么好抱怨的,能赚钱的业务就是好的业务,不能赚钱代码也得再好有什么用呢 |
46 antli 337 天前 啥也不说,外包给我,双赢。 |
47 jsonparse 337 天前 |
![]() | 48 freezebreze 337 天前 看开源项目源码也就图一乐,真学技术还得是重构屎山, |
49 JShen 337 天前 有的屎山高了,写代码写不动,改也改不动,并且很容易出 BUG ,面对需求无从下手,自己害怕,测试也害怕,领导也害怕。这种时候,炸屎山的时机来了。 |
![]() | 51 behindeye 337 天前 年轻人要接受这个世界的不完美,理想与现实往往相差甚远,我相信几年后,会被现实击碎理想主义,我们构想的、认为的、主张的,会一次次在各种不确定性,而妥协 |
52 zerovoid 337 天前 via Android 你是去学习的还是上班的,大部分人上班时间都不能提升自己,如果为了钱,烂就烂呗,能跑就行,你又不是架构师,如果想提升自己,那就换工作了。 |
53 maigebaoer 336 天前 via Android 这才是经过效益考验的代码,项目应该还可以。 |
![]() | 54 kingfighters 336 天前 几年前加入过一家类似的公司:用 svn ,没有测试,也不打算写,也没有 cicd ,也不打算搞,上线就基本都要回滚。。目测这鸟项目要黄了,跑。。。 |